【算法技巧】算法技巧记录

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. 

posted @ 2020-01-12 20:16  SignX  阅读(185)  评论(0编辑  收藏  举报