LinkedList資料結構

2021-09-26 05:41:14 字數 2126 閱讀 8116

/**實現linkedlist

* 雙向迴圈列表

*/public

class

linkedlist

//如果位置等於鍊錶的長度,表示向鍊錶末尾新增。

if(index == size)

//先找到指定位置的節點

node next =

getnode

(index)

; node prev = next.prev;

//將next和prev指定為新新增的節點的前後節點

node node =

newnode

(e);

next.prev = node;

node.prev = prev;

prev.next = node;

node.next = next;

//如果新增的位置是0,則新新增的節點成為頭節點

if(index==0)

size++;}

/** * 返回指定位置的元素

* @param index 位置(從0開始)

* @return

*/public e get

(int index)

node node =

getnode

(index)

;return node.data;

}/**

* 刪除指定位置的元素

* @param index 位置

* @return 元素

*/public e remove

(int index)

//只有乙個元素

if(size ==1)

//找到要刪除的節點

node node =

getnode

(index)

;//找到上下的節點

node prev = node.prev;

node next = node.next;

//讓上下建立引用關係

prev.next = next;

next.prev = prev;

//如果刪除的是頭節點,需要將下乙個節點指定為頭節點

if(index ==0)

size --

;//返回刪除的元素

return node.data;

}private node getnode

(int index)

//下標》size/2

}else

}return node;

}//獲得鍊錶的長度

public

intsize()

@override

public string tostring()

stringbuffer buf =

newstringbuffer

("["

+head.data)

; node node = head.next;

while

(node!= head)

return buf.

("]").

tostring()

;}/** * 在鍊錶的末尾新增某個元素

* @param e 要追加的元素

* @return 新增成功返回true,失敗false

*/public

boolean

add(e e)

//如果鍊錶不為空,則將該元素新增到末尾

node node =

newnode

(e);

//先找到鏈尾(最後乙個節點)(3個以上更好理解)

node end = head.prev;

//將新節點新增到鏈尾(即重新建立新的引用關係)

end.next = node;

node.next = head;

head.prev = node;

node.prev = end;

size++

;return

true;}

/** * 節點類(內部類):

* 用於封裝要新增的元素

*/private

class

node

}}

資料結構 單鏈表 Linked List

include include define list init size 10 define listincrement 100 define true 1 define false 0 define ok 1 define error 0 define infeasible 1 define o...

資料結構 鍊錶(LinkedList)

三五七言 不要讓資料結構成為天花板 相關 位址 鍊錶是乙個線性結構,同時也是乙個天然的遞迴結構。鍊錶結構可以充分利用計算機記憶體空間,實現靈活的記憶體動態管理。但是鍊錶失去了陣列隨機讀取的優點,同時鍊錶由於增加了結點的指標域,空間開銷比較大。基本屬性 element當前節點的值 next下乙個節點 ...

資料結構 鍊錶結構分析(LinkedList)。

本人非常感謝!希望能和您共同學習,共同進步!下面介紹鍊錶的兩種結構 單向鍊錶 只能從頭遍歷到尾,或者從尾遍歷到頭。圖例 ele 每個節點中的元素。first 指頭部,鍊錶中第乙個元素。我們可以理解為,當拿到鍊錶物件,呼叫first 就可以得到第乙個元素。size 指元素的個數。或鍊錶的長度 1,索引...