n的二进制表示中第k位数字是几
n的二进制表示中第k位数字是几
- 先把第k位数字移到最后一位 n>>k
- 看个位是几 x&1
除以2相当于二进制数右移1位
- 即右移1位相当于除以2,相当于除去二进制数中的下一位
按位与操作:
- 相当于取出某一位
- int a = 1010
- a & 1 = 0
- a & 11 = 2 (10的二进制表示为2)
lowbit操作
- lowbit(x)是返回x的最后一位1
- 相当于x&-x=x&(~x+1)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 h3110w0r1d's Blog!