Given an integer, write a function to determine if it is a power of two.
大概意思就是给一个整数n,判断这个数是不是2的几次方最后得到的值(忘了叫什么了,幂还是?额大概就是这个意思。)
2^0=1
记得小时候划过这个函数图最小值就是1
所以要有一个判断的条件就是n<=1时,就一定不符合条件返回False
class Solution(object):
def isPowerOfTwo(self, n):
"""
:type n: int
:rtype: bool
"""
if n <= 0:
return False
count = 0
for x in range(0,32):
if (n & 1) == 1:
count = count + 1
n = n >> 1
return count == 1
参考链接
https://www.youtube.com/watch?v=jLY1Zrj9AZ0&list=PLAE-zml3hxQvdC8iD61W9-lqeUd4RWC45