0
をC++します(すべてのキーに基づいて)?ベストコンテナには、次の構造体を考えると
私は現在、セット<を使用していますが、私はそれを変更できるように私のvariableToIncrementを可変に設定しました。マルチインデックスはより効率的なソリューションになるでしょうか?
ありがとうございます! 最大
をC++します(すべてのキーに基づいて)?ベストコンテナには、次の構造体を考えると
私は現在、セット<を使用していますが、私はそれを変更できるように私のvariableToIncrementを可変に設定しました。マルチインデックスはより効率的なソリューションになるでしょうか?
ありがとうございます! 最大
私の問題の1つは確かにスピードです。多くのキーを並べ替えるとすべてが遅くなると思います。
ソートを避けるために、ハッシュベースのコンテナを使用してください。セット使用の場合std::unordered_set<T>
。
This Q&A explains how to make hash and equality functions for use with hash-based containers.
これは単なるの特定の場合[C++ STLセット更新は面倒である:私は場所の要素を変更することはできません]れる(https://stackoverflow.com/q/2217878/96780)。 [この回答](https://stackoverflow.com/a/2221314/96780)は、あなたが持っている2つの賢明な選択肢をまとめています。私は鍵/値の分割と 'std :: map'に行くでしょう。なぜなら、それはもっときれいに見えるからです。 –
@dasblinkenlightこれまで、いくつかのキーを使ってレコードを作成すると、そのレコードはセットに追加されるか(まだそこにない場合)、またはvariableToincrementだけが変更されます。 – Batmax
@DanielDaranas私はこの答えをチェックします。ありがとう! – Batmax