為了堆疊實現

2021-09-09 01:27:30 字數 1523 閱讀 9143

為了堆疊資料結構如下面:

typedef struct

sqstack;

實現下列函式:

void initstack(sqstack* &s);    //初始化棧

void destroystack(sqstack* &s); //銷毀棧

int stacklength(sqstack* s); //求棧的長度

int stackempty(sqstack* s); //棧是否為空

int push(sqstack* &s,elemtype e); //進棧

int pop(sqstack* &s,elemtype &e); //出棧

int gettop(sqstack* s,elemtype &e); //取棧頂元素

void dispstack(sqstack* s); //輸出棧

詳細實現**:

#include#include#include#define elemtype int

#define maxsize 1000

#define get_array_length(array) (sizeof(array)/sizeof(array[0]))

using namespace std;

typedef struct

sqstack;

void initstack(sqstack* &s); //初始化棧

void destroystack(sqstack* &s); //銷毀棧

int stacklength(sqstack* s); //求棧的長度

int stackempty(sqstack* s); //棧是否為空

int push(sqstack* &s,elemtype e); //進棧

int pop(sqstack* &s,elemtype &e); //出棧

int gettop(sqstack* s,elemtype &e); //取棧頂元素

void dispstack(sqstack* s); //輸出棧

鏈式堆疊實現

ifndef stack linked h define stack linked h include include include using namespace std templatestruct node stack templateclass stack linked templates...

堆疊的實現

堆疊 後進先出 基本的操作有 push 入堆 pop 彈出 入堆 將資料放入到堆疊的頂部 彈出 將頂端的資料輸 include include include typedef struct stk stack int stack empty stack stack1 else void push s...

vector int 實現堆疊

這是乙個用鍊錶實現的堆疊,實現如下 class stack head public stack stack void push void dat void pop include stack.h include include require.h using namespace std stack ...