外观
一句话答案
常用位运算:n&(n-1) 去最低位 1、异或找唯一数、n&1 判奇偶、移位代替乘除 2。
核心要点
| 操作 | 表达式 | 用途 |
|---|---|---|
| 判断奇偶 | n&1 | 代替 n%2 |
| 去最低位1 | n&(n-1) | 计数1的个数 |
| 找唯一数 | 全部异或 | 成对抵消 |
| 2的幂判断 | n>0 && (n&(n-1))==0 |
追问与易错
追问方向:
- n&(n-1) 的原理?
- 位运算在实际工程中哪里用到?
- 怎么用位运算判断 2 的幂?
易错点:
- ❌ 位运算总是更快——可读性差且编译器会自动优化
- ❌ 位运算只在算法题中用——HashMap/权限管理等广泛使用
💡 记忆锚点
位运算三板斧:n&1看末位判奇偶,n&(n-1)消掉最低位的1(像橡皮擦,反复擦就能数出有几个1,也能判断2的幂——只有一个1擦完就是0),全部异或找唯一数(相同数异或抵消归零,剩下的就是那个落单的)。HashMap的tableSizeFor、Linux权限位都是位运算的实战应用。