Questions tagged «bitvector»

12
说明使用位向量确定所有字符是否唯一
我对位向量如何实现此功能感到困惑(对位向量不太熟悉)。这是给出的代码。有人可以帮我解决这个问题吗? public static boolean isUniqueChars(String str) { int checker = 0; for (int i = 0; i < str.length(); ++i) { int val = str.charAt(i) - 'a'; if ((checker & (1 << val)) > 0) return false; checker |= (1 << val); } return true; } 特别是,这是checker怎么做的?

6
为什么vector <bool>不是STL容器?
斯科特·迈耶斯(Scott Meyers)的书《有效的STL:提高标准模板库使用率的50种特定方法》第18条说,要避免vector &lt;bool&gt;使用它,因为它不是STL容器,并且实际上并不适用bool。 如下代码: vector &lt;bool&gt; v; bool *pb =&amp;v[0]; 不会编译,这违反了STL容器的要求。 错误: cannot convert 'std::vector&lt;bool&gt;::reference* {aka std::_Bit_reference*}' to 'bool*' in initialization vector&lt;T&gt;::operator []返回类型应该是T&amp;,但是为什么会有特殊情况vector&lt;bool&gt;呢? 什么是vector&lt;bool&gt;真正组成的呢? 该项目还说: deque&lt;bool&gt; v; // is a STL container and it really contains bools 可以代替vector&lt;bool&gt;吗? 谁能解释一下?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.