思路
这道题三种做法.
第一种:递归
class Solution {
public boolean isPowerOfTwo(int n) {
if(n==1||n==2) return true;
if(n<=0||n%2!=0) return false;
return isPowerOfTwo(n/2);
}
}
运行结果

第二种:位运算
class Solution{
public boolean isPowerOfTwo(int n) {
return n>0 && ((n & (n-1))==0);
}
}
运行结果

第三种:还是位操作
class Solution{
public boolean isPowerOfTwo(int n) {
return n > 0 && (n & -n) == n;
}
}
运行结果

博客介绍了一道题的三种做法,分别是递归、位运算和另一种位操作,且每种做法都给出了运行结果,聚焦于算法思路的展示。
6万+

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



