鏈棧的基本操作

2021-08-18 19:15:23 字數 595 閱讀 2319

初始化乙個資料元素為整形的鏈棧,並實現進棧、出棧、獲得棧頂元素等操作。

通過控制台將1,2,3,4,5進棧,出棧兩次,獲得棧頂元素並輸出,6進棧,列印棧內的所有內容。

#include#include#define maxsize 100

#define ok 1

#define error 0

using namespace std;

typedef struct stacknode //鏈棧的定義

stacknode,*linkstack;

int initstack(linkstack &s) //初始化鏈棧,將棧頂指標置空

int push(linkstack &s, int e) //入棧,注意此處e不是引用傳遞

int pop(linkstack &s, int &e) //出棧,此處e為引用傳遞

int gettop(linkstack s) //取棧頂元素

int main()

{ stacknode *s;

initstack(s);

int a,i,b;

cout<<"入棧"<

鏈棧基本操作

棧基本概念 棧 stack 是限定在表尾進行插入和刪除操作的線性表 或單鏈表 只能在一段進行插入和刪除,因此不存在,在中間進行插入 棧頂 top 允許插入和刪除的一端。而另一端稱為棧底 bottom 空棧 不含任何資料元素的棧。後進先出 兩個基本操作 棧的插入操作 push 叫做進棧,或壓棧,或入棧...

鏈棧基本操作

棧 stack 是限定在表尾進行插入和刪除操作的線性表 或單鏈表 只能在一段進行插入和刪除,因此不存在,在中間進行插入 棧頂 top 允許插入和刪除的一端。而另一端稱為棧底 bottom 空棧 不含任何資料元素的棧。後進先出 棧的插入操作 push 叫做進棧,或壓棧,或入棧 刪除操作 pop 叫做出...

鏈棧的基本操作

鏈棧,即用鍊錶實現棧儲存結構。鏈棧的實現思路同順序棧類似,順序棧是將數順序表 陣列 的一端作為棧底,另一端為棧頂 鏈棧也如此,通常我們將鍊錶的頭部作為棧頂,尾部作為棧底,如圖 1 所示 圖 1 鏈棧示意圖 將鍊錶頭部作為棧頂的一端,可以避免在實現資料 入棧 和 出棧 操作時做大量遍歷鍊錶的耗時操作。...