哈喽大家好,今天博主给大家带来算法基础常见位运算的模板,可以说大家遇到的百分之九十与位运算有关的题都可以用得上。话不多上我们上干货:
一.基础位运算符
<< 左移运算符
>> 右移运算符
~ 取反
& 与运算
| 或运算
^ 或非
对于前三个,我们都很熟悉,我们重点说一下后三位,既然我们标题说有模板,那么大家只要记住博主给大家总结口诀就可以了:
非常通俗易懂吧
& : 0&0=1 1&0=0; 有0就是0
| 1 | 1=1 1 | 0=1; 有1就是1
^ 1^1=0 1^0=1 相同为0,相异为1
二.给定一个数n,确定它的二进制表示中的第x位是0还是1
n=0 1 1 0 1 0 1 0 0 1
首先第一个知识点是二进制最低位是右边,所以我们在计算的时候是从右边从零计数
比如我们选择第六位,想判断它是不是1,只要&1不就行了,如果