判2的幂

8 分钟

2 的幂的二进制只有一个 1,减 1 后低位全变 1,两者相与得 0。故 n>0 && (n&(n-1))==0 即判断 n 是否为 2 的幂。

小纸条

8 和 12 哪个是 2 的幂?用该式验证 12。

登录 后可看答案

判2的幂 · 算法进阶 · op599 课程