棧 順序棧的基本操作

2021-07-16 14:47:35 字數 1082 閱讀 7757

棧也是一種線性表,但是棧是一種操作受限的線性表,因此也可稱它為限定性的資料機構。

棧是限定僅在表尾進行插入或刪除操作的線性表。棧的表尾為它的棧頂,表頭為它的棧底。

先進入棧的後出棧,後進入棧的先出棧。所以,棧被稱為後進先出的線性表。

順序棧基本操作的實現:

#include

#include

#define init_stacksize 5

#define incrementsize 5

typedef structsqstack;

int init_stack(sqstack &s);

int stack_empty(sqstack s);

int push(sqstack &s,int e);

void get_top(sqstack s,int &e);

void pop(sqstack &s,int &e);

int clear_stack(sqstack &s);

int main()

//檢視棧頂元素

get_top(s,e);

printf("棧頂元素為:%d\n",e);

//刪除棧頂元素並且列印它的值

pop(s,e);

printf("刪除棧頂元素成功,其值為:%d\n",e);

//再次檢視棧頂元素

get_top(s,e);

printf("棧頂元素為:%d\n",e);

//清空棧

if(clear_stack(s)==1)

printf("清空棧成功!\n");

}int clear_stack(sqstack &s)

void pop(sqstack &s,int &e)

void get_top(sqstack s,int &e)

int push(sqstack &s,int e)

*s.top++=e;

}int stack_empty(sqstack s)

int init_stack(sqstack &s)

棧 順序棧的基本操作

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

順序棧 鏈棧基本操作

include stdafx.h include stdio.h include stdlib.h define stack max size 7 int stackdata stack max size define stack max size 14 int stackdata stack ma...

順序棧 鏈棧基本操作

include stdafx.h include stdio.h include stdlib.h define stack max size 7 int stackdata stack max size define stack max size 14 int stackdata stack ma...