2011-09-11 17 views
0

C#SortedListにキーが存在するかどうかを調べる最良の方法はどれですか?C#SortedListにキーが存在するかどうかを調べる最良の方法はどれですか?

質問は非常に明確です、私はSortedListが関連付けられている配列を表しています。キーと値の両方が文字列です。私は線形のスキャンを考えていますが、バイナリ検索はより速く、「ソート」されています。

MSDNや人気のある場所のように、キーでペアを見つける標準的な方法があるのだろうか?

+0

トピックを表示:私は検索を行うためのSortedList(リスト型コレクション)の使い方を理解していません。固有でないキーが必要な場合は、Lookupクラスを調査しましたか? http://msdn.microsoft.com/en-us/library/bb460184(v=VS.90).aspx –

+0

ちょうど習慣、私は他のDictioanryよりSortedListが好きな理由を知らない... generic ... – jondinham

答えて

5

ContainsKeyは、キーが存在するかどうかを調べる最も良い方法です。これは、すでに最適化されて、カスタム検索アルゴリズムを作成するために必要はありません。

「この方法は、バイナリサーチアルゴリズムを使用していますので、この 方法は、nがはO(log n)操作ですカウント。"

+0

は 'Contains'よりも鮮明に聞こえますが、coz 'Contains'は "key or value?"と非常に混同していますか?私はちょうどmsdnで読んだように、彼らはまったく同じように動作:) :) – jondinham

関連する問題