私は、オブジェクトの小さなリストをオブジェクトの大きなセットのサブリストとして格納するアルゴリズムに取り組んでいます。オブジェクトは本質的に順序付けられているため、順序付けされたリストが必要です。
実行される最も一般的な操作は、頻度の順になります。
- リストからn番目の要素を取得する(任意のnの場合)
- リストの最初または最後にシングルを挿入する
- リストから最初または最後のn個の要素を削除する(任意のn個の場合)
真ん中からの取り外しと挿入は決して行われないので、その効率を考慮する必要はありません。
私の質問は、Javaのこのユースケース(つまり、LinkedList、ArrayList、Vectorなど)に対してListのどの実装が最も効率的かということです。情報に基づいた決定を下せるように、さまざまなデータ構造の実装について説明して、回答を守ってください。
ありがとう。
ノート
いいえ、これは宿題の問題ではありません。いいえ、私にはその仕事をしてくれる軍の研究助手がいません。