棧的順序儲存及基本操作

2021-08-20 07:31:11 字數 1298 閱讀 3124

#include

#include

#define emptytos    

(-1)

#define minstacksize  

( 5 )

typedef int elementtype ;

struct stackrecord

;typedef struct stackrecord *stack;

int isempty(stack s);

//判空函式

int isfull(stack s);

//排滿函式

stack creatstack(int maxelement);

//建立大小為maxelement的棧

void disposestack(stack s);

//銷毀棧

void makeempty(stack s);

//清空棧

void push(elementtype x,stack s);

//入棧

elementtype top(stack s);

//棧頂元素

void pop(stack s);

//出棧

elementtype topandpop(stack s);

//出棧並返回棧頂元素

int main(void)

stack creatstack(int maxelement)

//建立大小為maxelement的棧 

void disposestack(stack s)

//銷毀棧 

}int isempty(stack s)

//判空 

int isfull(stack s)

//判滿 

void makeempty(stack s)

//清空棧 

void push(elementtype x,stack s)

//入棧 

elementtype top(stack s)

//取棧頂元素 

}void pop(stack s)

//出棧 

elementtype topandpop(stack s)

//出棧並取棧頂元素 

}

棧的基本操作及實現(順序棧)

順序儲存結構來實現的棧稱為順序棧,它利用一組位址連續的儲存單元存放自棧底到棧頂的資料元素,同時附設乙個指標top來指示當前棧頂的位置。注意,是c 特有的用來表示引用呼叫,所以此檔案應以.cpp字尾儲存 結構體為 define maxsize 50 typedef int elemtype typed...

棧 順序棧的基本操作

棧也是一種線性表,但是棧是一種操作受限的線性表,因此也可稱它為限定性的資料機構。棧是限定僅在表尾進行插入或刪除操作的線性表。棧的表尾為它的棧頂,表頭為它的棧底。先進入棧的後出棧,後進入棧的先出棧。所以,棧被稱為後進先出的線性表。順序棧基本操作的實現 include include define in...

棧 順序棧的基本操作

棧 作為一種限定性線性表,是將線性表的插入和刪除操作限制為僅在表的一端進行,通常將表中允許插入 刪除操作的一端稱為棧頂。下面給出順序棧的 演示。順序棧 採用順序儲存結構實現的棧,即利用一組位址連續的儲存單元依次存放自棧底的資料元素,同時由於棧操作的特殊性,還必須附設乙個位置指標top來動態的指示 棧...