#include
#include
#include
#define true 1
#define false 0
#define ok 1
#define error 0
#define infeasible -1
#define overflow -2
#define stack_init_size 100
//棧儲存空間的初始分配量
#define stackincrement 10
//儲存空間分配增量
typedef
int status;
//函式型別 為int取別名 status
typedef
int selemtype //資料元素型別,為int取別名 selemtype
//棧的定義
typedef
struct sqstack
sqstack;
//為整個定義的結構體取別名 sqstack
status createstack
(stack &s)
status clearstack
(sqstack &s)
status destroystack
(sqstack &s)
s.top = s.base =
null
; s.stacksize =0;
return ok;
}
status push
(sqstack &s, selemtype e)
*s.top++
= e;
return ok;
}
status pop
(sqstack &s, selemtype &e)
status gettop
(sqstack s, selemtype &e)
int
stacklength
(sqstack s)
資料結構 順序棧的基本操作
順序棧是指利用順序儲存結構實現的棧,即利用一組位址連續的儲存單元依次存放自棧底到 棧頂的資料元素,同時附設指標top指示棧頂元素在順序棧中的位置。由於c語言中陣列的下標是從0開始的,通常習慣的做法是 以top 1 表示空棧。順序棧的定義如下 define maxsize 100 define ele...
資料結構 完成順序棧,鏈式棧的基本操作
seqstack.h pragma once include define title printf n s n function typedef char seqstacktype typedef struct seqstack seqstack void seqstackinit seqstac...
順序棧的基本操作 資料結構 一 棧結構
數 結 structure data 據 構 棧 結 構 s t a c k 前言 在計算機中儲存資料需要用到各種資料結構,一起來了解下棧結構吧。棧結構介紹 棧結構的宗旨就是先進後出 filo,first in last out 即先進入棧中的元素會在最後才能彈出。棧結構用圖形來表達的話就是這樣 棧...