【算法技巧】算法技巧记录
1:逻辑左移有个好处,就是左移i位就相当于乘以2i,这就像十进制数左移i位相当于乘以10i。
如: 二进制数 1001所代表的的十进制=9 那1001左移4位=10010000=144=9*(24),
2:假设 我要计算5位二进制数所代表的最大十进制数代表什么,也可以用左移,公式为 =-1^(-1<<5)=31= 111111111111111111111111111111111^(111111111111111111111111111111111<<5)=111111111111111111111111111111111^111111111111111111111111111100000=0000000000000000000000000011111=31。
即5位二进制所代表的最大十进制数是31。11111=1*24+1*23+1*22+1*21+1*20=16+8+4+2+1=31
3:两个相同的数异或=0 如1^1=0.