ハッシュ テーブルのような組み込みの C# データ構造はありますが、キーと値の両方が互いに一意である必要がありますか? 私は基本的に、一意の値を介してテーブル内の Key オブジェクトを検索する方法と、その逆の方法が必要です。2 つのハッシュ テーブルを維持するか、ハッシュ テーブル内の各キーを反復処理する (これは遅い) の次に、これを実装するより良い方法は考えられません。
このリクエストさえあるという事実は、コードで何かを間違って設計しているという兆候ですか?
ハッシュ テーブルのような組み込みの C# データ構造はありますが、キーと値の両方が互いに一意である必要がありますか? 私は基本的に、一意の値を介してテーブル内の Key オブジェクトを検索する方法と、その逆の方法が必要です。2 つのハッシュ テーブルを維持するか、ハッシュ テーブル内の各キーを反復処理する (これは遅い) の次に、これを実装するより良い方法は考えられません。
このリクエストさえあるという事実は、コードで何かを間違って設計しているという兆候ですか?
これは必ずしも設計上の欠陥ではありませんが、フレームワークには何も組み込まれていません。幸いなことに、最近非常によく似た質問があり、役立つはずの回答を書きました。
Google Collections では、これをBiMapと呼んでいます。これをC#に移植できますか?