單鏈表基礎操作C 實現

2021-06-21 12:30:26 字數 1005 閱讀 7635

最近在複習資料結構,就把單鏈表的基礎操作過了一篇

node.h標頭檔案:

templatestruct node 

node(t nval)

};

單鏈錶類檔案:

#include #include "node.h"

#include using namespace std;

templateclass singlelinklist

return pnode;

}public:

singlelinklist()

// add向單鏈表的尾部新增節點

void add(t nval)

else

size++;

} // insertat在指定位置插入節點

void insertat(int pos, t nval)

else if(pos == 0)

else

} // removeat刪除指定位置的節點

void removeat(int pos)

else if(pos == 0)

else

size--;

} // 刪除鏈尾節點

void remove()

// 判斷鍊錶是否為空

bool isempty()

// 返回鍊錶大小

int sizev()

// 返回鏈首元素

t getheadval()

// 返回鏈尾元素

t gettailval()

// 清空鍊錶

void clear()

tail = 0;

size = 0;

} // 返回fval所在下標,-1表示沒有找到

int find(t fval)

return -1;

}};

c 單鏈表基礎操作

最近開始刷leetcode,感覺自己的基礎太差,基本的鍊錶部分的問題都得想很久,今天花了乙個晚上的時間將鍊錶的基礎操作都實現了一遍,記錄一下自己的收穫 最大的是收穫的一句話 鍊錶的操作使用替身 替身其實就是類似指標的東西,但是我之前一直沒有想到這一點,導致思路堵塞 舉個例子 我要操作first,如遍...

實現單鏈表的基礎操作

鍊錶 鍊錶是一種物理儲存結構上非連續 非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈 接次序實現的 下面我們來看看單鏈表的實現 list.h pragma once include include include include 1 無頭單向非迴圈鍊錶增刪查改實現 typedef int ...

c 實現單鏈表的操作

include using namespace std define null 0 class node 節點類 建構函式 node int n 建構函式 node int n,node p void setnum int n 資料和指標兩個屬性分開操作 void setnext node p in...