用 Python 检查数字是否是 2 的幂的程序
假设我们有一个数字 n。我们必须检查 n 是否为 2 的幂。
所以,如果输入类似 n = 2048,那么输出将为 True,因为 2048 是 2^11。
为了解决这个问题,我们将按照以下步骤进行操作:
如果 n 与 0 相同,则
返回 False
当 (n AND (n - 1)) 与 0 相同(否则为 false)时返回 true
示例
让我们看下面的实现以更好地理解
def solve(n):
if n == 0:
return False
return (n & (n - 1)) == 0
n = 2048
print(solve(n))输入
2048
输出
True
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP