鍊錶是線性表的鏈式儲存方式,鍊錶的記憶體是不連續的,鍊錶通過乙個指向下乙個元素位址的引用將所有的元素串起來。
單向鍊錶
單向鍊錶是最簡單的鍊錶形式。鍊錶中最基本的元素稱為節點(node),每個節點包含了資料域和指向下乙個節點的指標。
頭結點
圖中最上面的head結點,頭結點可以不儲存任何資料,頭結點的指標域存放的是指向第乙個結點的指標。
頭結點的作用是使所有的鍊錶(包括空鍊錶)的頭指標非空,並且對單鏈表的插入、刪除操作不需要區分是否為空表,或者是否在第乙個位置進行,從而與其他位置的插入刪除操作一致。
頭指標
頭指標是指向鍊錶中第乙個結點的指標,注意:有頭結點的鍊錶,指的就是頭結點的指標域中存放的指標。
單鏈表可以沒有頭結點,但不能沒有頭指標。
雙向鍊錶
迴圈鍊錶
LinkedList 鍊錶
線性表是一種簡單的資料結構,其主要特點是元素之間存在 一對一 的關係,除去第乙個元素,每個元素都存在唯一乙個 前驅節點 除去最後乙個元素都存在唯一乙個 後繼節點 簡單的線性表有 陣列 單鏈表 雙向鍊錶 靜態鍊錶等。順序表 陣列 優缺點 陣列不僅邏輯上,物理上位置也相鄰,可隨機訪問,但刪除或插入元素時...
LinkedList 鍊錶
最近複習到鍊錶 linkedlist 一般來說共有大概有兩種實現方式 1.陣列實現 和 2.鏈式實現。我僅使用了直接鏈式實現,如下。其他的實現方式,大家不妨自己嘗試下吧。author ace yom peizhen zhang date 2015 8 17 description 鍊錶實現 ifnd...
鍊錶 LinkedList
原文中singlelinklist的remove方法有問題,因為是 node current firstnode.getnext 所以導致鍊錶的第乙個節點刪不掉。修改如下 public class singlelinklist 刪除某個節點 param element return 刪除成功返回tr...