位运算

1. 位运算常用技巧

  • 整数n的二进制表示中,第k位是0还是1(注意个位对应第0位)
//先把第k位移动到最后一位
n >> k
//再看一下第k位是什么
n & 1
//合并在一起
n >> k & 1
  • lowbit(x):返回x的最后一位1
x & (-x)
也即
x & (~x + 1)  //给个例子模拟一下验证
//c++中负数是对应正数的补码 -x = ~x + 1  
  • 去掉最低位的1
n = n & (n - 1)

2. 位运算相关题目

posted @ 2021-04-11 12:03  呼_呼  阅读(40)  评论(0编辑  收藏  举报