もちろん、arraylist と linkedlist のパフォーマンスの違いについては知っています。私は自分でテストを実行しましたが、非常に大きなリストの場合、arraylist と linkedlist の間で挿入/削除と反復の時間とメモリに大きな違いがあることを確認しました。
(私が間違っていたら訂正してください) 私たちは通常、次の理由から、リンクリストよりも配列リストを好みます。
1)実際には、挿入/削除よりも頻繁に反復を行います。そのため、反復は挿入/削除よりも高速であることが望ましいです。
2)linkedlist のメモリ オーバーヘッドは、arraylist よりもはるかに大きい
3)バッチで挿入/削除するときにリストをリンクリストとして定義し、反復中に配列リストとして定義する方法はありません。これは、arraylist と linkedlist のデータ ストレージ手法が根本的に異なるためです。
3 番目の点については間違っていますか [そう願っています :)]? 単一のリストでこれら 2 つのデータ構造の利点を得る可能性はありますか? おそらく、データ構造の設計者はそれについて考えたに違いありません。