美文网首页随笔
Leetcode 231. 2的幂

Leetcode 231. 2的幂

作者: zhipingChen | 来源:发表于2019-10-07 14:38 被阅读0次

    题目描述

    给定一个整数,编写一个函数来判断它是否是 2 的幂次方。

    示例 1:

    输入: 1
    输出: true
    解释: 2^0 = 1

    示例 2:

    输入: 16
    输出: true
    解释: 2^4 = 16

    示例 3:

    输入: 218
    输出: false

    解法

    如果该值是 2 的幂次方,则该值的二进制位中只有一位为 1,其他位全部为 0,则有 num&(num-1)==0

    class Solution(object):
        def isPowerOfTwo(self, n):
            """
            :type n: int
            :rtype: bool
            """
            if n<=0:
                return False
            return n&(n-1)==0
    

    相关文章

      网友评论

        本文标题:Leetcode 231. 2的幂

        本文链接:https://www.haomeiwen.com/subject/lfdmpctx.html