C鍊錶操作

2021-09-22 06:40:49 字數 2164 閱讀 4342

#define  _crt_secure_no_warnings #include 

#include

#include

typedef

struct

node

slist;

slist *slist_create(); //

建立鍊錶

int slist_print(slist *phead); //

遍歷鍊錶

int slist_nodeinsert(slist *phead, int x, int y); //

插入值 在x值之前 刪除y

int slist_nodedel(slist *phead, int

y);int slist_destory(slist *phead);

//建立鍊錶

slist *slist_create()

phead->data = 0

; phead->next =null;

printf(

"\nplease enter you data: ");

scanf("%d

", &data);

pcur =phead;

while (data != -1

)

pm->data =data;

pm->next =null;

//2 新結點 入鍊錶

pcur->next =pm;

//3 新結點變成當前節點

pcur = pm; //

鍊錶結點的尾部追加

printf(

"\nplease enter you data: ");

scanf("%d

", &data);

}return

phead;}//

列印鍊錶

int slist_print(slist *phead)

tmp = phead->next;

printf(

"\nbegin\t");

while

(tmp)

printf(

"\tend");

return0;

}//插入節點

int slist_nodeinsert(slist *phead, int x, int

y) pm->next =null;

pm->data =y;

//遍歷鍊錶

ppre =phead;

pcur = phead->next;

while

(pcur)

ppre =pcur;

pcur = pcur->next;

}//讓新結點 連線 後續鍊錶

pm->next = ppre->next;

//讓前驅節點 連線 新結點

ppre->next =pm;

return0;

}//刪除節點

int slist_nodedel(slist *phead, int

y) ppre =pcur;

pcur = pcur->next;

}//刪除操作

if (pcur ==null)

ppre->next = pcur->next;

if (pcur !=null)

return0;

}int slist_destory(slist *phead)

while (phead !=null)

return0;

}int slist_reverse(slist *phead)

//初始化

//前驅結點

p = phead->next;

q = phead->next->next;

//p = phead;

//**能相容

//q = phead->next;

//乙個結點 乙個結點的逆置

while

(q)

//頭節點 變成 尾部結點 後 置null

phead->next->next =null;

phead->next = p; //

return0;

}void

main()

C鍊錶操作

include include 定義乙個結構體 struct student 記錄個數 int icount 0 建立鍊錶 struct student create else pnew struct student malloc sizeof struct student scanf s pnew...

C 鍊錶操作

關於鍊錶操作,在c 當中微軟已經提供了乙個linkedlist的資料結構,通過這個類提供的一系列方法就能夠實現鍊錶操作。這裡我提供一段 這是在論壇裡面有人提問時給出的 它實現了自定義鍊錶的操作 讀者可以在此基礎上進一步完善 因為這段 涉及一些c 技巧,所以貼出來給初學者學習c 提供一點參考。實體類 ...

C 鍊錶操作總結和常見鍊錶操作

一 鍊錶的定義 鍊錶是一種動態資料結構,他的特點是用一組任意的儲存單元 可以是連續的,也可以是不連續的 存放資料元素。鍊錶中每乙個元素成為 結點 每乙個結點都是由資料域和指標域組成的,每個結點中的指標域指向下乙個結點。head是 頭指標 表示鍊錶的開始,用來指向第乙個結點,而最後乙個指標的指標域為n...