資料結構之線性表 六 迴圈鍊錶

2021-09-25 10:25:39 字數 812 閱讀 5296

迴圈鍊錶的定義

1.概念與特點

迴圈鍊錶:是一種頭尾相接的鍊錶。

表中的最後乙個結點的指標域指向頭結點,整個鍊錶形成環狀結構。

優點:從表中任意乙個結點出發均可找到表中其他結點。

補充:由於迴圈鍊錶中沒有null指標,所以涉及到遍歷操作時,其終止條件不再像單鏈表那樣判斷p或者p->next是否為空,而是判斷它們是否等於頭指標,如下圖所示,

2.迴圈鍊錶的查詢(兩種表示法)

因為對錶的操作常常是在首尾位置上進行,所以該表示方法對於查詢首尾元素而言不方便。

迴圈鍊錶的合併

這裡主要描述帶尾指標的迴圈鍊錶合併(將tb合併在ta之後)

演算法描述:

linklist connect(linklist ta, linklist tb)

上述演算法的時間複雜度為o(1

)o(1)

o(1)

資料結構線性表 迴圈鍊錶

普通單鏈表 1 表尾的next指標指向null。2 從乙個結點出發只能找到後續的結點。迴圈單鏈表 1 表尾的next指標指向頭指標l。2 從乙個結點出發可以找到其他任何乙個結點。include include typedef struct lnodelnode,linklist 迴圈單鏈表初始化 b...

資料結構(六) 線性表之迴圈鍊錶與雙向鍊錶

我們之前說過了單鏈表,大家應該都有印象吧,那麼迴圈鍊錶是什麼呢?迴圈鍊錶就是將單鏈表中終端結點的指標端自空指標改為指向頭結點,就使整個單鏈表形成乙個環,這種頭尾相接的單鏈表稱為單迴圈鍊錶,簡稱迴圈鍊錶 circular linked list 那麼迴圈鍊錶出現的目的是為什麼呢?迴圈鍊錶解決如何從當中...

資料結構線性表之鍊錶

c 關於鍊錶的操作,包括建立鍊錶 正序和倒序插入 輸出鍊錶內容 插入節點 刪除節點 銷毀等操作 單鏈表基本操作 include include define elemtype int typedef struct nodelnode,linklist linklist link linklist m...