Skip to main content

位运算

位运算是一种直接对二进制位进行操作的运算方式,效率高,常用于算法优化。

基础位运算符

常用技巧

1. 判断奇偶性

2. 交换两个数(不用临时变量)

3. 判断第k位是否为1

4. 将第k位设为1

5. 将第k位设为0

6. 将第k位取反

7. 取出最低位的1

8. 去掉最低位的1

9. 判断是否为2的幂次

10. 计算二进制中1的个数

经典题目

LeetCode 136. 只出现一次的数字

**题目:**数组中除了一个数字出现一次外,其余都出现两次,找出只出现一次的数字。 **解法:**利用异或的性质:a ^ a = 0, a ^ 0 = a

LeetCode 191. 位1的个数

LeetCode 231. 2的幂

LeetCode 338. 比特位计数

应用场景

  • 状态压缩:用一个整数表示多个布尔状态
  • 集合运算:用位运算实现集合的交、并、补
  • 权限管理:用位表示不同权限
  • 性能优化:位运算速度快,可替代乘除运算
最后修改于 2026年4月19日