题目
给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。
例:
输入:n = 16
输出:true
解释:24 = 16
方法
- num 表示 2 的幂次方,初始值为 2 的零次方 1
- 循环直至 2 的幂次方大于等于整数 n
- 若 2 的幂次方小于整数 n,那么指数应加一,即乘以二
- 判断此时的 num 是否等于 n,若等于即表示整数 n 可以由 2 的幂次方得到
class Solution(object):
def isPowerOfTwo(self, n):
num = 1
while num < n:
num *= 2
if num == n:
return True
return False
网友评论