用C 編寫單向鍊錶

2021-09-26 06:31:00 字數 2576 閱讀 1249

list.h

#ifndef list_h

#define list_h

#include

#include

#define type int

using

namespace std;

class

node};

class

list

~list

(void);

//頭新增

void

head_add

(type data)

;//尾新增

void

tail_add

(type data)

;//頭刪除

bool

head_del

(void);

//尾刪除

bool

tail_del

(void);

//插入

bool

insert

(int index,type data)

;//位置刪除

bool

del_index

(int index)

;//值刪除

bool

del_value

(type data)

;//遍歷

void

show_list

(void);

//排序

void

sort_list

(void);

//求鍊錶長度

size_t _size

(void);

};#endif

//list_h

list.c

#include

"list.h"

list::

~list

(void

) cout <<

"資料清理完成"

<< endl;

cout <<

"size="

<< size << endl;

}//頭新增

void list::

head_add

(type data)

else

size++;}

//尾新增

void list::

tail_add

(type data)

else

prev-

>next = node;

} size++;}

//頭刪除

bool list::

head_del

(void

)else

size--

;return

true;}

//尾刪除

bool list::

tail_del

(void

)else

node* next = prev-

>next;

prev-

>next =

null

;delete next;

} size--

;return

true;}

//插入

bool list::

insert

(int index,type data)

else

node-

>next = prev-

>next;

prev-

>next = node;

} size++

;return

true;}

//位置刪除

bool list::

del_index

(int index)

else

node* next = prev-

>next;

prev-

>next = next-

>next;

delete next;

} size--

;return

true;}

//值刪除

bool list::

del_value

(type data)

while

(prev-

>next !=

null

) prev = prev-

>next;

}return

false;}

//遍歷

void list::

show_list

(void

) cout <<

"------------------"

<< endl;

}//排序

void list::

sort_list

(void)}

}}//求鍊錶長度

size_t list::

_size

(void

)```

用c 實現單向鍊錶和雙向鍊錶

鍊錶是一種非常基礎的資料結構,本身也比較靈活,突破了陣列在一開始就要確定長度的限制,能夠做到隨時使用隨時分配記憶體。同時還有新增,刪除,查詢等功能。總的來說,鍊錶是由幾個模組構成的。一,單向鍊錶 鍊錶基本元素 struct node 建立節點 node current nullptr node he...

C 單向鍊錶

單向鍊錶 鍊錶的功能包括 向尾節點新增資料,遍歷鍊錶中的節點,在鍊錶結束時釋放所有節點 class cnode 定義乙個節點類 class csllist 定義鍊錶類csllist類 csllist m nodesum 0 pdelete null ptmp null m pheader null ...

C 單向鍊錶

實現鍊錶的增刪改查 ownlinklist.cpp include include include ownlinklist.h include using namespace std node init node get elment node list,int index if i index 1...