學習C C 的第二十五天 資料結構 棧

2021-10-01 17:00:11 字數 1271 閱讀 4222

進出的一端稱為棧頂(top),另一端稱為棧底(base),棧可以用順序儲存,也可以用鏈式儲存。

注意:棧只能在一端操作,後進先出,這是棧的關鍵特徵,也就是說你允許在中間查詢、取值、插入、刪除等操作,我們掌握棧的初始化、入棧、出棧、去棧頂元素。

#define max_size 128

typedef int elemtype;

struct sqstack

;

#include

#include

using

namespace std;

#define max_size 128

typedef

int elemtype;

struct sqstack

;//構造乙個空棧

bool

initstack

(sqstack &s)

//入棧:插入元素 e 為新的棧頂元素

bool

pushstack

(sqstack &s, elemtype e)

//出棧:刪除 s 的棧頂元素,暫存在變數 e 中

bool

popstack

(sqstack &s, elemtype &e)

//判斷是否是空棧

bool

isempty

(sqstack &s)

else

}//優化版

//獲取棧頂的元素 返回 s 的棧頂元素,棧頂指標不變

bool

gettop1

(sqstack &s, elemtype &e)

else

}elemtype gettop2

(sqstack &s)

else

}//返回棧中元素個數

intgetsize

(sqstack &s)

//銷毀棧

void

destorstack

(sqstack &s)

}int

main1()

cout <<

"元素依次出棧:"

<< endl;

while(!

isempty

(s))

//如果棧不空,則依次出棧

cout << endl;

destorstack

(s);

system

("pause");

return0;

}

第二十五天

程序 資源分配的最小單元 程序的組成 程式 資料和程序控制塊 pcb 所有的排程都是提前準備的 程序的經典三態 執行 就緒 等待 父程序的id ppid 啟動程序的使用者id uid 排程演算法 1.先來先服務 2.短程序優先 3.高優先順序優先 4.時間片輪轉法 一般都是用這個 先來先服務演算法的...

第二十五天

學會了final的相關使用方法 明天學習abstract關鍵字 一 final關鍵字 final關鍵字是最終的意思,使用final修飾類,代表該類不能被繼承。final修飾方法表示該方法不能被重寫。final修飾變數,代表該變數是常量 1 final方法 使用final修飾方法時,該方法不能被重寫,...

linuxC學習第二十五天

只說明部分 自動宣告變數,預設時編譯器預設是auto。請求編譯器盡可能的將變數存在cpu的內部暫存器中。通過這種方式可以盡可能的提高效率。要注意的是,內部暫存器有限,不能全部放入暫存器中,因此只是盡可能的存放cpu的內部暫存器中 修飾靜態變數 全域性變數,區域性變數 靜態變數存放在記憶體的資料區 1...