タグ付けされた質問 「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コンテナではないのはなぜですか?
スコットマイヤーズの本の効果的なSTLの項目18 :標準テンプレートライブラリの使用を改善するための50の特定の方法vector &lt;bool&gt;は、STLコンテナではなく、実際にはboolsを保持しないため、避けるようにと言っています。 次のコード: 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;か? 誰もがこれを説明できますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.