順序棧的基本實現

2021-10-19 05:23:38 字數 1772 閱讀 9662

學了順序棧

用**記錄一下

下面展示一些內聯**片

#include.h>

#define maxsize

5#define error0;

#define ok1;

using namespace std;

typedef int status;

typedef int selemtype;

//棧的基本資料結構型別

typedef struct stack

sqstack;

//棧的初始化操作

status initstack

(sqstack &s)

//順序棧的判空

bool stackempty

(sqstack s)

//棧的判滿

bool stackfull

(sqstack s)

//求順序棧的長度

int stacklength

(sqstack s)

//清空棧操作

status clearstack

(sqstack &s)

//銷毀棧

status destroystack

(sqstack &s)

returnok;

}//取棧頂元素

int getelem

(sqstack s)

//順序棧的入棧

status push

(sqstack &s,selemtype e)

//順序棧的出棧

status pop

(sqstack &s,selemtype &e)

//順序棧的列印

status printstack

(sqstack s)

int *p;

p = s.top-1;

//令p指標指向棧頂元素的指標

cout<<

"當前棧為:"

(p!=s.base)

cout <<

*p

}//*************************************

//**********功能函式編寫****************

//*************************************

//獲取棧頂元素

//獲取長度

void

getlength

(sqstack s)

//判滿

void

isfull

(sqstack s)

else

}//清空

void

empty

(sqstack &s)

}//判空

void

isempty

(sqstack s)

else

}//元素入棧

void

push

(sqstack &s)

else

}//元素出棧

void

pop(sqstack &s)

else

}void

menu()

int main()

}printstack

(s);

int ch;

while(1

)}return0;

}

順序棧的基本實現

順序棧採用的是用陣列儲存的方式 順序棧的特點 只允許在棧頂插入和刪除元素,且 先入後出 includeusing namespace std const int stacksize 10 templateclass seqstack seqstack 析構函式 void push datatype ...

實現順序棧基本運算 棧

c語言實現順序棧的入棧 出棧 棧元素讀取操作 1 include 2 include 3 define maxsize 20 4 define maxnum 10 5 define elemtype int 6 typedef struct sqstack 7 sqstack 儲存結構型別名 111...

順序棧的基本操作實現

這些都是頭函式裡的內容,也就是儲存之後,可以直接 對其進行呼叫。其中的乙個變數stacklen是用來記錄棧 的長度的,其實,這個變數可以不要,只是剛開始寫時 給它加上了,所以就按這樣寫了,感覺跟順序表的寫法 差不多 include include includeusing namespace std...