为什么比特集使用位掩码?

时间:2017-01-12 17:28:05

标签: c++ algorithm bitmask

在很多竞争性的编程网站和书籍中,我已经看到过使用过掩码的问题和解决方案,例如在许多动态编程和完整搜索问题中。我认为它们比bool数组更受欢迎,因为它们更轻量级,因为它们每个值只占1位,而bool数组中每个值只占1个字节。

然而,当我了解bitsets时,我想知道为什么使用位掩码作为位集也需要相同的内存量,即每个值1位。但它们具有更易于使用和管理的附加优势。现在我对此感到困惑。

所以TL; DR为什么在竞争编程环境中,位掩码优先于位集,尤其是? 提出一个想法,这里有一个需要动态编程和位掩码的问题,并且在编辑中看到了一些有点复杂的问题(至少在我的水平上,我只是一个十年级的学生)。 https://www.hackerrank.com/challenges/synchronous-shopping

感谢您提前回答我的疑问!

编辑:关于竞争性节目的仇恨评论,如果您认为使用位掩码的弊端,请尝试在上面问题链接的编辑中转换代码以使用位集并获得AC判决。

0 个答案:

没有答案