a&(a-1) 除去a二进制中最后一位1
a XOR 0 = a a与0的异或仍是a a XOR a = 0 a与a的异或为0 a XOR b XOR a = b 可用于去重
LeetCode : 136. Single Number 单一数字web
有0出0;全1出1svg
A | B | F=AB |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
有1出1;全0出0.net
A | B | F=A+B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
用^表明事件相反code
有1出0;有0出1。xml
A | F = ^A |
---|---|
0 | 1 |
1 | 0 |
与操做相反blog
A | B | F = ^(A·B) |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
或操做相反事件
A | B | F = ^(A+B) |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
A | B | C | D | F = ^(AB+CD) |
---|
相同得0;相异得1get
A | B | F = ^AB + A^B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
相同得1;相异得0it
A | B | F = AB + AB |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
首先记住与、或、非操做。与非、或非只须要先按照与、或判断,再非一下。异或、与或关键词在于《异:不一样》为一、《与:相同》为1。table