在Python中检查一个数是否为2的幂

在Python中检查一个数是否为2的幂

假设我们有一个数字n。我们必须检查这是不是2的幂。

因此,如果输入是n = 2048,则输出将为True,因为2048是2^11。

要解决此问题,我们将按照以下步骤进行 –

  • 如果n等于0,则
    • 返回False
  • 当(n AND (n – 1))与0相同时返回true,否则返回false

示例

让我们看一下以下实现以获得更好的理解

def solve(n):
   if n == 0:
      return False
   return (n & (n - 1)) == 0

n = 2048
print(solve(n))

输入

2048

输出

True

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程