棧的鍊錶實現(C語言版)

2021-07-23 22:21:06 字數 612 閱讀 8139

棧也是一種簡單常用的資料結構,他的特點是先進先出。

現代化計算機將棧操作作為指令系統的一部分,棧也就有可能成為電腦科學中在陣列之後最基本的資料結構。所以,棧的重要性就不用多說了。

其實現思路也比較簡單,這裡就不多解釋了,直接看**吧

#include

"stack.h"

#include

struct node

;void fatalerror(char * s)

void error(char * s)

int isempty(stack s)

stack creatstack(void)

void makeempty(stack s)

void push(elementtype x,stack s)

}elementtype top(stack s)

void pop(stack s)

}void disposestack(stack s)

int main()

}

按照慣例,同樣在後面加了個main函式用於測試,順便把書上沒有的幾個實現也補上了

注:**改編自《資料結構與演算法分析》第二版

迴圈鍊錶(C語言版)

circlelinklist.h define ok 1 define error 0 typedef int status typedef int elemtype typedef struct cnode cnode typedef struct cnode clinklist status i...

棧 C語言版

棧 lifo 運算所限的線性表,限制它的插入和刪除操作僅在表的一段進行。棧頂 top 插入 刪除。另一端為棧底。n 0稱為空棧,插入新元素稱為入棧 進棧。刪除稱為出棧 退棧。特點 先進後出。基本運算 初始化棧 判斷空 入棧 出棧 讀棧頂元素。順序棧儲存結構 初始化棧 stack init 判斷空 入...

LeetCode 旋轉鍊錶 C語言版

題目 給定乙個鍊錶,旋轉鍊錶,將鍊錶每個節點向右移動 k 個位置,其中 k 是非負數。輸入 1 2 3 4 5 null,k 2 輸出 4 5 1 2 3 null 解釋 向右旋轉 2 步 4 5 1 2 3 null 解題思路 首先用len記錄鍊錶長度 只需要用k模上len,就可以判斷是否鍊錶是否...