下面介紹鏈式儲存結構的單向迴圈鍊錶。
迴圈鍊錶是另一種形式的鏈式儲存結構。其特點是表中最後乙個結點的指標域指向頭結點,整個鍊錶形成乙個環。
由此,從表中任一結點出發均可找到表中其他結點。
描述:資料域+指標域
typedef
int datatype;
typedef
struct node slinklist,
*slinklist_t;
用malloc動態申請空間
//只有頭結點,自身構成迴圈
return h;
}使用尾插法插入元素
//2.找尾巴
r = h;
while
(r->next != h)
r = r->next;
//3.接入新結點
pnew->data = x;
pnew->next = h;
r->next = pnew;
return0;
}
void
showslinklist
(slinklist_t h)
printf
("%d\n"
, p->data)
;}
單向迴圈鍊錶操作與單鏈表大同小異。
測試
//1.建立乙個空的單向迴圈鍊錶
slinklist_t h =
createslinklist()
;if(null
== h)
//2.向表中增加資料
insertslinklist
(h,10);
insertslinklist
(h,11);
insertslinklist
(h,99);
insertslinklist
(h,1);
insertslinklist
(h,12);
//3.列印輸出
showslinklist
(h);
線性表之單向鍊錶
pragma once 單向 不迴圈 不帶頭 typedef int sldatetype typedef struct slistnode slistnode typedef struct slist slist 初始化 void slistinit slist list 銷毀 void slis...
線性表 線性表 抽象鍊錶類 單向鍊錶講解
線性表兩種分類 順序表,鍊錶 線性表 記錄 資料元素 資料項 順序表 只有唯一乙個節點只存在乙個後繼,不存在前驅,只有唯一乙個節點存在前驅,不存在後繼,中間所有的節點都存在位移的前驅和後繼 順序表的優點 可以隨機訪問,方便訪問,儲存密度大,空間利用率高 順序表缺點 難以實現插入資料的操作,而且空間一...
線性表 迴圈鍊錶
迴圈鍊錶的定義 將單鏈表中最後乙個資料元素的next指標指向第乙個元素,即把鍊錶的兩頭連線,形成了乙個環狀鍊錶,稱為迴圈鍊錶 在迴圈鍊錶中可以定義乙個 當前 指標,稱為游標,通過游標來遍歷鍊錶中所有元素 迴圈鍊錶和動態鍊錶相比,唯一的不同就是迴圈鍊錶首尾相連,其他都完全一樣 可以用兩次列印迴圈鍊錶,...