なんらかの形式のデータ構造に格納する必要がある約 1,000,000 個のオブジェクトがあります。それらはキー (ID) によって一意である必要がありますが、日付に従って並べ替えられます。したがって、それらを何らかの形式のデータ構造に格納する最良の方法を考えようとしています。パフォーマンス (実行にかかる時間) が主な目標であり、次にメモリ使用量です。私の考えは、オブジェクトをツリーに配置することでした。オブジェクトがデータ構造に入るときに日付に従ってソートされる可能性があり、それらを順番に返すことができます。ただし、IDに基づいて単一のオブジェクトを見つけるのは非常に遅くなると思います。私が思いついたことの 1 つは、ID を日付にリンクする二次構造を作成して、単一のオブジェクトを見つけるのにかかる時間を短縮できるようにすることでした。
キーポイント:
オブジェクトは後で追加される可能性があるため、c.1,000,000 オブジェクトは修正されません。それらは更新または削除されません。Java のビルトイン Comparator は使用できません。データを返す効率を最適化しています - これが (日付順の) 完全なセットであるか、ID から取得された単一のオブジェクトであるかに関係なく。