ArrayList和LinkedList有什么區別
ArrayList和LinkedList都實現了List接口,有以下的不同點:
1.ArrayList是基於索引的數據接口,它的底層是數組,他可以以0(1)時間復雜度對元素進行隨機訪問。與此對應,LinkedList
是以元素列表的形式存儲它的數據,每一個元素都和它的前一個和后一個元素鏈接在一起,在這種情況下,查找某個元素的時
間復雜杜是0(n)。
2.相對於ArrayList,LinkedList的插入,添加,刪除操作速度更快,因為當元素被添加到集合任意位置的時候,不需要像數組
那樣重新計算大小或者更新索引。
3.LinkedList比ArrayList更占內存,因為linkedlist位每一個節點存儲了兩個引用,一個指向前一個元素,一個指向下一個元素。