棧的實現 鍵表和陣列

2021-06-07 08:03:43 字數 1962 閱讀 7690

//棧的鍵表實現

//標頭檔案

#ifndef _stack_h

#define _stack_h

struct node;

typedef struct node *ptrtonode;

typedef ptrtonode stack;

typedef int elementtype;//設定棧裡面的元素為int型的

int isempty(stack s);

stack createstack(void);

void disposestack(stack s);

void makeempty(stack s);

void push(elementtype x,stack s);

elementtype top(stack s);

void pop(stack s);

#endif

#include

#include "stack.h"

using namespace std;

struct node

;//測試乙個棧是否為空

int isempty(stack s)

//從棧中彈出乙個元素

void pop(stack s)

}//返回棧頂元素

elementtype top(stack s)

}//把乙個元素壓入棧中

void push(elementtype x,stack s)

}//彈出棧中所有元素

void makeempty(stack s)

//陣列實現

#include

#include"stackrecord.h"

using namespace std;

#define emptytos -1;//棧為空時

int minstacksize=5;//乙個棧的最小的長度

struct stackrecond

;//建立乙個空棧——陣列實現

//標頭檔案

#ifndef _stack_h

#define _stack_h

struct stackrecond;

typedef struct stackrecond *stack;//在陣列的棧中對棧的引有也是用指標,這樣就可以修改棧中的元素了

typedef int elementtype;//假設陣列中的元素為int型的

int isempty(stack s);

int isfull(stack s);

stack createstack(int maxelements);

void disposestack(stack s);

void push(elementtype x,stack s);

elementtype top(stack s);

void pop(stack s);

elementtype topandpop(stack);

#endif

//主檔案

void makeempty(stack s)

//棧的建立——陣列的實現

stack createstack(int maxelements)

//檢測乙個棧是否空棧——陣列的實現

int isempty(stack s)

//檢測乙個棧是否滿棧——陣列的實現

int isfull(stack s)

//進棧——陣列的實現

void push(elementtype x,stack s)

//出棧——陣列的實現

void pop(stack s)

//返回棧頂元素——陣列的實現

elementtype top(stack s)

//返回棧項元素並刪除——陣列的實現

elementtype topandpop(stack s)

好好學習,天天向上~~哈哈~~

棧的實現 鍊錶和陣列

c語言 列印函式採用的c 棧的鍊錶實現 棧的初始化 建立 清空 入棧 出棧 獲取棧頂元素 棧的陣列實現 初始化 入棧 出棧 清空棧 參考資料 資料結構與演算法分析 c語言描述 p46 stacklinklist.cpp cpp view plain copy 功能 棧的鍊錶實現 棧的初始化 建立 清...

棧 佇列和陣列

一 棧和佇列的基本概念 1.棧是一種線性表無疑。一般提供兩種操作 入棧 push 和出棧 pop 分別對應著資料插入和資料刪除。佇列的話,也是一種線性表。和棧不同的是,棧只能在棧頂操作 push pop 而佇列被限制為從一端入,從另一端出。這裡的棧和佇列指的都是最一般的情況。2.棧是先進後出的 fi...

兩種實現棧的方式 利用鍊錶和陣列

棧是一種常用的資料結構,其基本方式為先進後出 棧的實現方式一般為兩種 鍊錶和陣列,先來看一下用鍊錶實現的方式 如下 利用鍊錶實現棧 author victor gong param 棧中元素的資料型別 public class linkedstack public linkedstack retur...