判断一个数是否是2^N次方

来源:互联网 发布:电脑能写小说的软件 编辑:程序博客网 时间:2024/05/16 07:41

要求不能使用 循环。。。

题解:首先我们知道2的N次方  这个数 的二进制 肯定是10000....这种形式,而且只带一个1,低位全是0,那么我们就可以用这个数减去1,得到的二进制是011111...

再将他俩取逻辑与 得到的结果必定是0,所以用X&(X-1)是否为0 来判断。。


0 0