問題タブ [multimap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - .NET 辞書でキーが重複していますか?
.NET 基本クラス ライブラリに重複キーの使用を許可する辞書クラスはありますか? 私が見つけた唯一の解決策は、たとえば次のようなクラスを作成することです。
しかし、これは実際に使用するのはかなりイライラします。Java では、MultiMap がこれを達成すると信じていますが、.NET では類似物を見つけることができません。
c++ - std::multimap でのキーの要件
キーがカスタムクラスである std::multimap があります。このようなもの:
ここで、upper_bound と lower_bound を使用して、同じ値の "s" を持つすべての要素を反復処理したいと思います。X に他の演算子を実装する必要がありますか (例: ==)。それとも、このままで正常に動作するのでしょうか?
また、 upper_boundとlower_boundの引数として何を指定すればよいですか? 「s」の目的の値でダミーオブジェクトを作成する必要があると思いますか?
c++ - stl :: multimap-データのグループを取得するにはどうすればよいですか?
マルチマップには基本的に、キーでソートされたデータのグループがあります。これらの個々のグループにアクセスして、それらの集計値を取得できる方法が必要です。たとえば、std::multimap< string, int >
私は店で
これらの値を保存すると、このマルチマップを繰り返して、各「グループ」の集計値を取得できるようになります。問題は、そのような方法でマルチマップにアクセスするためにSTLで定義された関数がないことです。を使用してlower_bound
、upper_bound
マルチマップを手動で反復し、グループのコンテンツを合計することもできますが、STLですでに定義されているより良い方法があることを望んでいますか?上記の例でグループの集計値を取得する方法について、誰かが解決策を提案できますか?
c# - .NET のマルチマップ
std::multimap<K, V, Comp, Alloc>
C-sharpの c++ に相当するものが必要です。標準ライブラリに存在しますか?
c++ - std::multimap<> からアイテムが削除された後もイテレータを使用し続けることはできますか?
multimap::erase() を呼び出した後でも multimap イテレータを使用し続けることはできますか? 例えば:
これは正しく実行されるはずですか、それとも消去の呼び出しに続いてイテレータが無効になりますか? http://www.cplusplus.com/reference/stl/multimap/erase.htmlのような参照サイトは、イテレータの寿命、またはイテレータに対する建設的/破壊的メソッドの影響に関するこのトピックについて奇妙に静かです。
c++ - 少し異なるマルチマップが必要です
C++ コンテナー クラスを探しています。これはマルチマップによく似ていますが、少し異なります。コンテナーには、文字列のペアが格納されます。しかし、キー K を使用してコンテナからアイテムを取得するときは、K がアイテム自身のキーで始まるすべてのアイテムを見つけたいと考えています。
EG キー「abcde」を使用する場合、「abcqz」ではなく、キー「adc」および「abcde」を持つアイテムを検索したい。
または疑似 C++ 形式:
挿入時間は重要ではありませんが、アイテムにすばやくアクセスする必要があります。特別な < 演算子を作成することにより、通常のマルチマップでこれを行うことは可能ですか? 私の推測では、挿入には通常の < 演算子が必要で、検索には特別な演算子が必要です。
ありがとう
ヒューゴ
hibernate - 休止状態のマルチマップ
キーと値のペアとしてエントリを格納するコレクションが必要ですが (キーで値を検索できるようにするため)、休止状態を使用して複数の値が同じキーを共有できるコレクションが必要です
c++ - マップ/マルチマップで使用するようにファンクターを「適応」させる方法は?
マルチマップで std::for_each やその他のアルゴリズムを使用するのが難しいので、適切なパラメーターを「ジェネリック」関数に渡すことができるファンクターの開発を誰かが手伝ってくれるかどうか知りたいです。
マップ/マルチマップに関する私の特定の問題は、それらのイテレータが、作業する必要がある含まれている値 (つまり、mapped_type) ではなく std::pair に評価されることです。それで、私の質問は、含まれているタイプのマップ/マルチマップの1つで動作するように設計された関数に適切な値を渡す方法はありますか?
ここに私のサンプルコードがあります:
おそらく bind1st または bind2nd を mem_fun と組み合わせてこの問題を解決できると思います。または、元のファンクターを格納してペアの正しいメンバーを渡す新しいファンクターを作成することも考えられますが、私はそうではありませんなんとか良い結果を得ることができました。STLの経験がある人は、アドバイスをいただけますか?
ブーストや追加の一時コンテナを使用せずに、私が得ることができる最高のものは次のとおりです。
.net - 重複を許可する Dictionary/SortedList に代わるものはありますか?
重複の可能性:
重複キーを許可する C# のソート可能なコレクション
基本的に、カスタム比較器の実装に入ることなく、辞書を重複キーで機能させたいと思います。次の考え方があります。
ただし、まだオーバーヘッドがあります。辞書に「AllowDuplicates」があればいいのにと思います。
java - Java プライオリティ キュー
Java のプライオリティ キューO(log n)
は、 put (挿入) とO(log n)
poll (検索と min 要素の削除)が複雑なデータ構造です。
C++ STL のmultimapには同じ機能がありますがO(1)
、min 要素の取得と削除 (開始と消去) が複雑になります。Java に相当するものはありますか?