最近在複習資料結構,就把單鏈表的基礎操作過了一篇
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...