【发布时间】:2019-02-28 17:22:23
【问题描述】:
假设一个班级有 n 名学生要参加考试。
我们打算设计出最快的方法来查明是否所有学生都参加了考试。
由于状态存储在存储库中 - 读取和更新操作成本很高。
这是否可以通过位移/切换来实现。
如果 n=5,则初始状态为 n 个字节的 0 - 00000
每个完成考试的学生从右边开始推 1。
00001
00011
00111
......
所有由 1 组成的字节表示闭包。
我们如何使用位操作来实现这一点?
有没有更有效的方法来实现这一点?
【问题讨论】:
-
为什么不在考试通过时使用递增的数字?
标签: bit-manipulation bit bit-shift