本文共 397 字,大约阅读时间需要 1 分钟。
如何判断一个数是否是2的N次幂?
判断一个数是否为2的N次幂,可以参考以下方法:
边界条件检查
如果一个数小于等于零,那么它显然不是2的N次幂。2的N次幂始终是一个正数。二进制判别方法
2的N次幂在二进制表示中具有以下特征:例如,2^0 = 1(二进制:1)
2^1 = 2(二进制:10)2^2 = 4(二进制:100)2^3 = 8(二进制:1000)通过这种形式,可以看出,2的N次幂的二进制表示中只有一个1,其余为0。因此,可以通过以下公式实现判断:
public boolean isPowerOfTwo(int n) { return n > 0 && (n & (n - 1)) == 0; }
以上代码通过位运算实现了对2的N次幂的检测。如果n大于0并且n与n-1的按位与运算结果为0,则n一定是2的某个次幂。
转载地址:http://imgyk.baihongyu.com/