線性表之順序棧
棧是限定僅在表尾(棧頂)進行插入刪除操作的線性表,filo:先進後出
一、順序棧的標頭檔案:seqstack.h
1二、測試順序棧的原始檔:testseqstack.cpp//順序棧標頭檔案
2 #include3
using
namespace
std;4//
設定順序棧的大小
5const
int stacksize = 10
;6 template7//
定義順序棧的模板型別
8class
seqstack
12//
析構函式為空
13 ~seqstack(){}
14//
入棧操作,將元素入棧
15void
push(datatype x);
16//
出棧操作,將棧頂元素彈出棧
17datatype pop();
18//
取出棧頂元素,不刪除棧頂元素(即取出的元素還在棧內)
19datatype gettop();
20//
判斷棧是否為空
21int
isempty();
22private:23
//存放站元素的指標
24datatype data[stacksize];
25//
棧頂指標:棧頂元素在陣列中的下標
26int
top;
27};
2829
3031
//實現順序棧入棧操作
32 template
33void seqstack::push(datatype x)
3440
else
4147}48
4950
51//
實現順序棧出棧,彈出棧頂元素
52 template
53 datatype seqstack::pop()
5460
else
6169}70
7172
73//
實現取出棧頂元素,但不刪除取出的元素
74 template
75 datatype seqstack::gettop()
7682
else
8389}90
9192
93//
實現判斷順序棧是否是空棧:棧空返回 1,否則返回 0
94 template
95int seqstack::isempty()
96102
else
103106 }
1三、執行示例結果://測試順序棧
2 #include3
//引入順序棧標頭檔案
4 #include"
seqstack.h"5
using
namespace
std;
6int
main()
7
線性表之順序表C 實現
線性表之順序表 一 標頭檔案 seqlist.h 1 順序線性表的標頭檔案 2 include3 4const int maxsize 100 5 定義順序表seqlist的模板類 6 template 7class seqlist 11 順序表有參構造器 建立乙個長度為n的順序表 12 seqli...
線性表(二) 棧之順序棧
一 定義棧的基類 棧的基類 template class stack 判斷棧是否為空 virtual bool empty 0 棧中元素的大小 virtual size t size 0 獲取棧頂元素 virtual t top 0 彈出棧頂元素 virtual t pop 0 入棧 virtual...
c語言線性表之順序表實現
避免重複編譯 ifndef seqlist h define seqlist h include include include define seqlist init size 8 define inc size 3 typedef int elmetype typedef struct seql...