要實現兩個部分:
結點物件
鍊錶物件
假設需求:
# 這裡的頭節點,有點像第乙個元素的佔位符
defis_empty
(self)
:return self.head ==
none
deflength
(self)
: cur = self._head
count =
0while cur !=
none
: count +=
1 cur = cur.
next
return count
# 頭部新增元素
defadd
(self, item)
: node = node(item)
node.
next
= self._head
self._head = node
# 尾部新增元素
def(self, item)
: node = node(item)
# 使用分支結構 (有不同情況,先考慮分支結構)
if self.is_empty():
self._head = node
else
: cur = self._head
while cur.
next
!=none
cur = cur.
next
cur.
next
= node
演算法筆記 資料結構 鍊錶
鍊錶節點一般有兩部分組成,即資料域和指標域 struct node 一般說來,資料域放節點要儲存的資料,而指標域指向下乙個結點的位址,這樣就會產生從某個結點開始的 由指標連線的一條鏈式結構,即鍊錶。而以鍊錶是否存在頭結點,又可以把鍊錶分為帶頭結點的鍊錶和不帶頭結點的鍊錶。頭結點一般成為head,且其...
資料結構 單向鍊錶
鍊錶結構的資料格式儲存 include stdafx.h 把這行放在最開始。include includeusing namespace std typedef struct data typedef struct node 這裡與上面的不同是多了node,注意如果沒有這個node,下面的struc...
資料結構(單向鍊錶)
ifndef linklist h define linklist h 鍊錶節點 template class linklistdata linklistdata linklistdata 獲取資料 t getdata public t data 資料 template class linklist...