單向迴圈鍊錶

2022-03-12 04:55:52 字數 1286 閱讀 7853

#include#include

#include

#include

typedef

struct

node

node,*pnode,*linklist;

//初始化

void init(linklist *list)

//新增資料,

void add(linklist list,int

data)

//end while

q=(pnode)malloc(sizeof

(node));

q->data =data;

q->next = list;//

新節點的指標域始終指向頭結點

p->next =q;}//

end add

//刪除list中第i個節點 i>=1

void del(linklist list,int i,int *data)

assert(i==0);//

為i斷言,防止刪除操作不合法

q=p->next;//

q為需要刪除的節點

*data = q->data;

p->next = q->next;

free(q);}//

end del

//在list中的第i個位置插入節點

void insert(linklist list,int i,int

data)

assert(i==0

); q = (pnode)malloc(sizeof

(node));

q->data =data;

q->next = p->next;

p->next =q;}//

獲取鍊錶的第i個位置,i>=1

int getdata(linklist list,int

i) assert(i==0

);

return p->data;}//

獲取鍊錶的長度

intgetlen(linklist list)

//清空鍊錶

void

clear(linklist list)}//

鍊錶銷毀

void destory(linklist *list)

while(p!=*list);

*list=null;}//

顯示鍊錶

void

display(linklist list)

intmain()

單向迴圈鍊錶

單向迴圈鍊錶.cpp 定義控制台應用程式的入口點。include stdafx.h include include clinklist.h using namespace std int tmain int argc,tchar argv int n 5 測試空鍊錶 clinklistclist a...

迴圈單向鍊錶

typedef struct list list 初始化乙個迴圈單向鍊錶 void list init list head 判斷鍊錶是否為空 int is list empty list head 往迴圈單向鍊錶中插入乙個元素 prev 在prev元素後面插入 void list insert li...

單向鍊錶迴圈

include include include include includetypedef struct looplink looplink,plooplink 設定結點物件,包含兩個成員,nvalue和指向下乙個物件的指標pnext plooplink create phead nvalue 9...