我想知道性能或比特掩码与位集的不同之处。我知道复制位掩码将采用O(1),因为它基本上表示为整数,所以对于位集也是如此,其中每个值由1位表示,从而使其与位掩码的大小相同吗?或者复制位集需要O(N)时间。
我试图衡量比特掩蔽的有用性,特别是在竞争性编程的背景下。
谢谢!
发布于 2017-01-12 17:49:14
复制位掩码不是固定时间。它是位数中的O(n)
,就像任何其他操作一样,必须只接触结构的每个元素一次。
一般来说,C++ bitset
对象的行为应该与手动整数位掩码相比较.例如,对bitset<32>
的操作应该与uint32_t
上的等效按位操作相同。
https://stackoverflow.com/questions/41626057
复制