package com.xiaobu.leetcode;
/**
* @author xiaobu
* @version JDK1.8.0_171
* @date on 2019/10/23 16:51
* @description 判断一个整数是否为2的次幂
*/
public class CheckPowerOfTwo {
public static boolean isTwoPower(int n){
if(n<=0){
return false;
}
return (n & n - 1) == 0;
}
public static void main(String[] args) {
boolean flag= isTwoPower(16);
System.out.println("flag = " + flag);
}
public static boolean checkIsPowerOfTwoByRecursive(int n) {
if (n == 1) {
return true;
}
if (n == 0) {
return false;
}
return checkIsPowerOfTwoByRecursive(n / 2) && n % 2 == 0;
}
}
2的次幂
最新推荐文章于 2024-08-14 12:18:30 发布
本文介绍了一种高效的方法来判断一个整数是否为2的次幂。通过位运算检查,如果一个整数大于0且与其减1后的结果进行与运算等于0,则该数为2的次幂。此外,还提供了一个递归版本的解决方案。

603

被折叠的 条评论
为什么被折叠?



