刷题Leetcode231 2 的幂

题目地址:https://leetcode-cn.com/problems/power-of-two/

刷题Leetcode231 2 的幂
题解思想:

普通思想(使用循环):

	1. 2的幂,首先排除0与负数,都为false
	2. 对2取余,若出现余数不为0,则代表不能被2整除,为false。若余数为0,则循环除以2再取余。
	3. 若最后为1,则代表一直被2整除结束,为true

进阶思想(不使用循环):
刷题Leetcode231 2 的幂刷题Leetcode231 2 的幂

普通题解代码:

def isPowerOfTwo(n):
    if(n <= 0):
        return False
    while(n > 1):
        if (n % 2):
            return False
        n = n / 2
    return True

进阶题解代码:

class Solution(object):
    def isPowerOfTwo(self, n):
            if n <= 0:
                return False
            if(n & (n - 1) == 0):
                return True
            return False
上一篇:231. 2的幂


下一篇:Grids for mac(精美Instagram客户端)