题目:判断一个整数n是否为2的幂次 思路:将n按2倍缩小,判断其对2的余数,如果余数不为0,肯定不是2的倍数,注意0和1需要特殊判断。 第二种方法是用按位与,加入一个数是2的倍数,那么这个数的二进制表示一定是最高位为1,其余位全为0,而n-1就是最高位为0,其余位全为1,这样的话n&n-1的结果就为0,以此来判断这个数是否为2的幂次十分高效。