資料結構 棧和佇列

2021-10-10 14:39:11 字數 1056 閱讀 9683

棧 stack

一種思想,先進後出,後進先出。可以將其看出彈夾,上子彈的順序和打出的順序。

棧頂 top ; 棧底 bottom

棧分為順序棧(seqstack || 陣列)、鏈式棧(linkstack || 鍊錶)

順序棧

typedef

int selemtype;

//棧元素的型別

#define stack_max 1024

//陣列需要設定最大數量

typedef

struct seqstack //棧

seqstack;

鏈式棧typedef

int selemtype;

//棧元素型別

typedef

struct node //棧元素節點

node;

typedef

struct linkedstack //棧結構

linkedstack;

棧常考點: 給一串資料,問入棧出棧的循序輸出結果不可能為?a b c d

佇列

佇列 一種先進先出的線性表。可以理解為排隊入場,或者通道通過。

隊頭 :rear 允許刪除元素(輸出) 隊尾:front 允許插入元素的一端

順序佇列:seqqueue

#define max 1024

typedef

struct seqqueue

seqqueue

鏈式佇列

鏈式佇列: linked queue

typedef

int qelemtype;

//佇列元素data的型別

//資料結點,佇列上的元素

typedef

struct qnode

qnode;

//頭結點:標識你這個佇列是否存在

typedef

struct linkedqueue

linkedqueue;

資料結構 棧和佇列

棧 基礎 知識棧 練習題 佇列 基礎知識 棧示意圖 後進先出 順序棧結構定義 define maxsize 1024 struct stack 操作函式 push 入棧 pop 出棧 struct lstack 鏈棧示意圖 操作函式 push 入棧 pop 出棧 注意 也可以直接呼叫系統已經寫好的庫...

資料結構 棧和佇列

本章的基本內容是 兩種特殊的線性表 棧和佇列 從資料結構角度看,棧和佇列是操作受限的線性表,他們的邏輯結構相同。從抽象資料型別角度看,棧和佇列是兩種重要的抽象資料型別。p棧 限定僅在表的一端進行插入和刪除操作的線性表。p允許插入和刪除的一端稱為棧頂,另一端稱為棧底。p空棧 不含任何資料元素的棧。a ...

資料結構 棧和佇列

用兩個棧來實現乙個佇列,完成佇列的push和pop操作。佇列中的元素為int型別。class solution int pop node stack2.top stack2.pop return node private stack stack1 stack stack2 大家都知道斐波那契數列,現...