單鏈表 資料結構

2021-10-01 09:01:43 字數 2760 閱讀 1471

slinkedlist.h

#pragma once

#include

#include

#include

#include

typedef

int sltdatetype;

typedef

struct slistnode

slistnode;

// 動態申請乙個節點

slistnode*

buyslistnode

(sltdatetype x)

;// 單鏈表列印

void

slistprint

(slistnode* plist)

;// 單鏈表尾插

void

slistpushback

(slistnode*

* pplist, sltdatetype x)

;// 單鏈表的頭插

void

slistpushfront

(slistnode*

* pplist, sltdatetype x)

;// 單鏈表的尾刪

void

slistpopback

(slistnode*

* pplist)

;// 單鏈表頭刪

void

slistpopfront

(slistnode*

* pplist)

;// 單鏈表查詢

slistnode*

slistfind

(slistnode* plist, sltdatetype x)

;// 單鏈表在pos位置之後插入x

// 分析思考為什麼不在pos位置之前插入?

void

slistinsertafter

(slistnode* pos, sltdatetype x)

;// 單鏈表刪除pos位置之後的值

// 分析思考為什麼不刪除pos位置?

void

slisteraseafter

(slistnode* pos)

;// 單鏈表的銷毀

void

slistdestory

(slistnode* plist)

;

slinkedlist.c

#define _crt_secure_no_warnings

#include

"slinkedlist.h"

slistnode*

buyslistnode

(sltdatetype x)

// 單鏈表列印

void

slistprint

(slistnode* plist)

else

printf

("null\n");

}}// 單鏈表尾插

void

slistpushback

(slistnode*

* pplist, sltdatetype x)

else

tail->next = newnode;}}

// 單鏈表的尾刪

void

slistpopback

(slistnode*

* pplist)

elseif(

(*pplist)

->next ==

null

)else

free

(tail);if

(prev !=

null

) prev->next =

null;}

}// 單鏈表的頭插

void

slistpushfront

(slistnode*

* pplist, sltdatetype x)

// 單鏈表頭刪

void

slistpopfront

(slistnode*

* pplist)

// 單鏈表查詢

slistnode*

slistfind

(slistnode* plist, sltdatetype x)

plist = plist->next;}if

(judge ==0)

}// 單鏈表在第 i 個結點位置之後插入x

void

slistinsertafter

(slistnode*

* pplist,

int i,sltdatetype x)

newnode->next = cur->next;

cur->next = newnode;

}// 單鏈表刪除第 i 個結點位置之後的值

void

slisteraseafter

(slistnode* plist,

int i)

next = cur->next;

cur->next = next->next;

free

(next)

; next =

null;}

單鏈表的銷毀

void

slistdestory

(slistnode*

* pplist)

*pplist =

null

;}

資料結構單鏈表

初學資料結構,貼段自己編寫的單鏈表程式,希望自己能夠一直以強大的學習熱情持續下去!自勉!2012年3月30日 於大連 include using namespace std typedef struct node linklist,node linklist makelist int n void ...

資料結構 單鏈表

今天浪費了好多時間,也許是心裡想著明天的考試吧 可自己也知道這次的考試,自己畢竟過不了了,只好等到今年11月份,想想那時自己已經大三了 還有那麼多時間嗎!很懊惱今天不知怎麼回事,感嘆環境真的可以影響乙個人,真的可以 把今天的學習筆記寫下來,沒有進行好好的整理,這回單鏈表的功能較多,操作比較散,最後乙...

資料結構 單鏈表

實現乙個單鏈表 1 查詢 查詢第index個節點 查詢指定的元素 2 插入 將指定的元素插入到第index個節點上 3 刪除 將第index個節點刪除 規律 刪除和新增元素前務必儲存兩個元素的位址引用資訊 public class mylinkedlist 記錄鍊錶結構的頭結點位址引用 privat...