2017-03-13 12 views
-4

<string,string>に似た2つの値のリストを格納しなければならず、キー、値のようなものではありません。オブジェクトやリストに格納できますが、そのようなデータ構造を格納するには? List<Tuple<string, string>>を参照している人はほとんどいませんが、ハッシュテーブルやオブジェクトなどの他のデータ構造を上回って使用する利点は何ですか?最も良いストア方法csharpの<string、string>のリスト

+7

まあ、 'List 'は存在しません。それは主な利点です –

+0

C#はList ()構造を持っていますか? –

+1

@AkashKCあなたは絶対に正しくありません –

答えて

1

"キー"を複数の値に対応させ、 Dictionary<string, List<string>>を使用できます。これはキーによるハッシュテーブルルックアップで値のリストになるので、キーの値を見つけることはO(1)になります。

キーと値を関連付ける必要があるが、キーでルックアップする必要がない場合は、List<Tuple<string, string>>またはList<KeyValuePair<string, string>>を使用するとよいでしょう。これを繰り返し実行してインデックスを参照できますキーはO(N)になります。

0

2つの文字列の新しいクラスを作成し、Tuple<string, string>の代わりにListまたはそれ以外の何か奇妙なコンストラクトに入れます。主な利点は、他の誰もがリストの中に何があるかを知っていて、2つの魔法の文字列を持っていないことです。最もクリーンで簡単な方法。

関連する問題