高级农民
- 积分
- 1956
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2018-10-8
- 最后登录
- 1970-1-1
|
Jun 22 第22天,位运算5题+复习6题
137. Single Number II, 可以对每一位进行bit取和,如果不被3整除,说明single number在这一位取1;也可以利用seenOnce、seenTwice;【还需研究】
190. Reverse Bits, 注意leading zeros以及负数的情况,处理固定的32位,需要使用bit manipulation;
762. Prime Number of Set Bits in Binary Representation, 对L-R所有的数进行遍历,然后求出bitCount,判断是不是处于primes set中,因为数字给定了范围;
191. Number of 1 Bits, 1.shift操作,注意>>>是无符号右移,>>有符号的;在java中,MAX+1=MIN,所以要注意;而且不能用n>0作为循环的条件,因为2147483648在java中是<0的,根本不会进入循环;2. 可以利用n&(n-1),将最右边的1置为0,判断运行几次;
260. Single Number III,首先如果只有一个single number直接XOR即可,现在有两个single,那么做XOR必然会有distinct number,可以分成两组,一组该位=0,另一组为1,两个single number必然处在两组之中;n&-n...
|
|