LinkedList 源碼學習

整體結構

LinkedList 底層數據結構是一個雙向鏈表

鏈表每個節點我們叫做 Node,Node 有 prev 屬性,代表前一個節點的位置,next 屬性,代表後一個節點的位置;
first 是雙向鏈表的頭節點,它的前一個節點是 null。
last 是雙向鏈表的尾節點,它的後一個節點是 null;
當鏈表中沒有數據時,first 和 last 是同一個節點,前後指向都是 null;
因爲是個雙向鏈表,只要機器內存足夠強大,是沒有大小限制的。

追加元素

分爲頭部追加,與尾部追加

這些在數據結構與算法中都學習過

優缺點

刪除增加元素快

查詢元素慢,通行導致的,再優化也莫得辦法

LinkedList 適用於要求有順序、並且會按照順序進行迭代的場景,主要是依賴於底層的鏈表結構

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章