棧:作為一種限定性線性表,是將線性表的插入和刪除操作限制為僅在表的一端進行,通常將表中允許插入、刪除操作的一端稱為棧頂。
下面給出順序棧的**演示。
順序棧:採用順序儲存結構實現的棧,即利用一組位址連續的儲存單元依次存放自棧底的資料元素,同時由於棧操作的特殊性,還必須附設乙個位置指標top來動態的指示
棧頂元素在順序棧中的位置。一般top=-1來表示空棧.
typedef struct//順序棧定義
seqstack;
void initstack(seqstack *s)//初始化順序棧
int push(seqstack *s, datatype x)//順序棧進棧運算
int pop(seqstack *s, datatype *x)//順序棧出棧運算
}
int gettop(seqstack *s, int *x)//順序棧讀棧頂元素運算
}
//驗證
int main()
num=gettop(&s, &num);
printf("棧頂元素為%2d\n", num);
printf("出棧順序為:");
棧 順序棧的基本操作
棧也是一種線性表,但是棧是一種操作受限的線性表,因此也可稱它為限定性的資料機構。棧是限定僅在表尾進行插入或刪除操作的線性表。棧的表尾為它的棧頂,表頭為它的棧底。先進入棧的後出棧,後進入棧的先出棧。所以,棧被稱為後進先出的線性表。順序棧基本操作的實現 include include define in...
順序棧 鏈棧基本操作
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...