LeetCode231-2的幂

 

非商业,不侵权,LeetCode链接附上:

https://leetcode-cn.com/problems/power-of-two/

进入正题。

 

题目:

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

示例:

输入: 16
输出: true
解释: 24 = 16

输入: 218
输出: false

代码实现:

//方法一 
public boolean isPowerOfTwo(int n) {

        if(n == 0) return false;
        while(n % 2 == 0) n /= 2;
        return n == 1;

    }

//方法二
位运算(具体实现之后展开)

 

分析:

方法一,首先进行边界判断,通过取余和除法运算缩小问题规模,然后进行最终判断并返回。

 

posted @ 2020-11-17 14:18  黑冰台  阅读(87)  评论(0)    收藏  举报