主题:面经
题目:
Check a number whether is Power of 2.
Code:
class Test{
public static void main(String[] args){
Solution sol = new Solution();
int num = 12;
System.out.println(sol.isPow(num));
System.out.println(sol.isPower(num));
}
}
class Solution{
public boolean isPow(int num){
for(int i=0; i<32; i++)
if(num==(1<<i)) return true;
return false;
}
public boolean isPower(int num){
return (num&(num-1)) == 0;
}
}
小结:
方法一比较土,和方法二比起来简直土爆了。
但都是运用了二进制的Bit算法。