當然,我知道arraylist和鏈表之間的性能差異。我已經自己運行測試,並且看到了在列表和列表之間插入/刪除和迭代之間在時間和內存方面的巨大差異。「這兩個」arraylist和鏈表的好處...可能在java中?
(糾正我,如果我錯了)我們一般喜歡的ArrayList在LinkedList的原因是:
1)我們實際上做迭代往往比插入/缺失。所以我們更喜歡迭代比插入/刪除更快。
2)鏈表的存儲器開銷比數組列表
3)沒有辦法中,我們可以定義一個列表作爲鏈表同時插入/批量刪除,並作爲數組列表而迭代更多。這是因爲ArrayList和鏈表具有根本不同的數據存儲技術。
我錯了關於第三點[我希望如此:)]這兩種數據結構在單個列表中有沒有可能帶來好處?我想,數據結構設計師必須考慮它。
可能的重複:http://stackoverflow.com/questions/1712952/is-there-a-known-implementation-of-an-indexed-linked-list – Aubin
你自己說過,如果有一個非妥協的解決方案有所有這些好處,沒有人會知道'ArrayList'和'LinkedList'。 –
@Aubin感謝您的鏈接。 +1 :) 但它是一個2009年的問題。過去3年數據結構領域有何改進?特別是在Java 7發佈之後? –