思路清晰,先说BP
假如判断第五位是否为1
100 -----------> 0110 0100
我们只需保证100的第五位进行位逻辑与是1即可,其他为可以补0
100 -----------> 0110 0100
-----------> 0010 0000
简单的位数我们可以通过计算出与100做位逻辑与的值,但数据量比较大时,不能快速计算出这个数值。我们可以考虑我们学的左移来解决这个问题。当需要判断第N位是否为1时,我们可以把1左移N位(1<<N),来与判断的数做位与运算来判断是否为1
代码展示:
运行结果:
网友评论