2017-03-28 9 views
1

基本的には、特定の位置がオブジェクトであるかそうでないかを表す単純な表現を作成したいと考えています。ビットマップ上のビットマトリックスの利点

したがって、10 'で埋められた大きなマトリックスが必要です。ランダムに配置されたgetおよびset操作を実行する予定であるため、この行列で効果的に作業することが重要ですが、行列全体を繰り返し処理することもできます。

これには最適な解決策はありますか? 私のアプローチは、ビット要素を含むベクトルのベクトルを作成することです。それ以外の場合は、ビットマップを使用する利点がありますか?

+0

[動的ビットセットよりもブール値が小さいベクトルを使用していますか?](http://stackoverflow.com/questions/16738579/is-using-a-vector-of-boolean-values-slower-ダイナミックビットセットより) – Jonas

答えて

1

std::vector<bool>は、すべてのビット操作のために、使用ケースによってはstd::vector<char>よりも遅くなりますが、使用率によっては遅くなることに注意してください。最適化の質問と同様に、答えは1つだけです。異なるソリューションとプロファイルを正しく試してみてください。

+0

さまざまな方法を試しているだけでなく、さまざまな方法で相談できるオンラインリソースや書籍がありますか? – Jonas