棧和佇列的實現借助了鍊錶。到鍊錶實現方法的鏈結。
繼承了dtslist,然後在此基礎上增加了push、pop等函式來入出棧或佇列,增加了返回 棧底和棧頂 或 隊頭和隊尾 的值的函式。
棧:
#ifndef dts_stack_hpp
#define dts_stack_hpp
#include"dtslist.hpp"
template
class dtsstack:public dtslist
dtsstack& push(t val)
t bottom()
~dtsstack()
dtsqueue& push(t val)
t pop()
t front()
t tail()
~dtsqueue()
};#endif
#include"dtsstack.hpp"
#include"dtsqueue.hpp"
int main(){
//棧dtsstack stack;
stack.push(0).push(1).push(2).push(3);
cout<<"top:"《輸出為:
top:3
bottom:0
content:0 1 2 3
3 2 1 0 空棧
front:0
tail:3
content:0 1 2 3
0 1 2 3 空佇列
按任意鍵繼續
資料結構模板 棧
此部落格是存的是我自己編寫的棧模板,如有錯誤請指出棧是操作受限的線性表,只允許在棧頂進行插入和刪除操作,遵循 後進先出 原則。include include define elemtype int define maxsize 1000 using namespace std 這是順序棧的模板 ty...
c 資料結構 模板類重寫棧
模板重寫棧的基本操作,不多說,上 不足之處,麻煩大神指點。基本操作如下 bool is empty my stack a 是否為空棧 t gettop my stack a 獲取棧頂元素 void stack push my stack a,t b 入棧 t stack pop my stack a...
資料結構模板 佇列
此部落格是存的是我自己編寫的佇列模板,如有錯誤請指出佇列是操作受限的線性表,只允許在隊頭進行刪除操作,在隊尾進行插入操作,遵循 先進先出 原則。順序隊 存在假溢位問題 include include define elemtype int define maxsize 1000 using name...