x乘2的幂与除2的幂 (左乘右除)
公式:
(x << n)表示x乘上2的n次方
(x >> n)表示x除以2的n次方
// 10乘2的5次方
(10 << 5) 等价于 10*pow(2, 5)
// 10除2的2次方
(10 >> 2) 等价于 10/pow(2, 2)
注意:被运算的数字始终在左边,2的次方数在右边
2的n次方
(1 << n) 等价于 pow(2, n)
(1 << 10) 等价于 pow(2, 10)
不用temp交换两个整数
void swap(int x , int y)
{
x ^= y;
y ^= x;
x ^= y;
}
判断一个十进制数的二进制串的某一位数字是0 or 1
// 判断二进制串1110的第3位(最低位为第0位)是数字1还是0
14 >> 3 & 1 // 运算结果为1
应用: