筆記 資料結構與演算法 單向鍊錶

2021-09-24 21:14:39 字數 1191 閱讀 8976

要實現兩個部分:

結點物件

鍊錶物件

假設需求:

# 這裡的頭節點,有點像第乙個元素的佔位符

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...