私は次のユースケースのどちらかを選択しようmap
としています。unordered_map
のキーはmap
ポインタです。最も一般的な使用例は、マップに単一の要素があることです。一般に、マップ内の要素の最大数は10未満です。マップは非常に頻繁にアクセスされ、速度が最も重要な要素です。マップへの変更はめったにありません。
ここでは速度の測定が明らかに正しいアプローチですが、このコードはいくつかのプラットフォームで使用されるため、要素の数に基づいてmap
とを選択するための一般的な経験則を作成しようとしています。unordered_map
std :: mapが少数の要素に対してより高速である可能性があることを示唆するいくつかの投稿をここで見ましたが、「小さい」の定義は与えられていません。
要素の数に基づいて、map
との間でいつ選択するかについての経験則はありますか?unordered_map
別のデータ構造(を介した線形検索などvector
)はさらに優れていますか?