if (i & ( 1 << j )) 这段判断条件不懂

这是第七课中位运算实现中的一个判断语句

fish - Hadooper

赞同来自:

先是1左移j位,比如左移两位,得到的结果是100(二进制,相当于十进制的2^2=4)。1左移j位就是1后面跟j个零(2^j)。 然后再将结果跟i做按位与操作。   这里其实就是想判断,将i转成二进制之后,从右往左数第j+1位是不是1。

要回复问题请先登录注册