Arraylist和Linkedlist的區別?

2021-08-29 18:50:38 字數 566 閱讀 9692

大致區別:

1.arraylist是實現了基於動態陣列的資料結構,linkedlist是基於鍊錶結構。

2.對於隨機訪問的get和set方法,arraylist要優於linkedlist,因為linkedlist要移動指標。

3.對於新增和刪除操作add和remove,linkedlist比較佔優勢,因為arraylist要移動資料。

所以在我們進行對元素的增刪查操作的時候,進行查操作時用arraylist,進行增刪操作的時候最好用linkedlist。

參考:linkedlist的本質是雙向鍊錶。

(01) linkedlist繼承於abstractsequentiallist,並且實現了dequeue介面。

(02) linkedlist包含兩個重要的成員:header 和 size。

header是雙向鍊錶的表頭,它是雙向鍊錶節點所對應的類entry的例項。entry中包含成員變數: previous, next, element。其中,previous是該節點的上乙個節點,next是該節點的下乙個節點,element是該節點所包含的值。

size是雙向鍊錶中節點的個數。

Array List和ArrayList的區別與

定義 public abstract class array icloneable,ilist,icollection,ienumerable,istructuralcomparable,istructuraequatable 陣列在記憶體中是連續儲存的,所以它的索引速度是非常的快,而且賦值與修改元...

LinkedList和ArrayList的區別

對於集合collection下的list介面,有兩個實現類,arraylist和linkedlist,那麼他們兩個有什麼區別呢。arraylist的底層由陣列實現,而linkedlist的底層由雙向鍊錶實現,底層的不同才是他們區別的根源。然而因為他們繼承於同乙個父介面,他們的很多方法都是相同的。關於...

ArrayList和LinkedList的面試題

一 arraylist為什麼是執行緒不安全的?arraylist在新增乙個元素的時候,它可能會有兩步來完成 1.在 items size 的位置存放此元素 2.增大 size 的值。在單執行緒執行的情況下,如果 size 0,新增乙個元素後,此元素在位置 0,而且 size 1 而如果是在多執行緒情...