版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、棧和隊列基礎(chǔ)知識C程 序 設(shè) 計CONTENTS 棧相關(guān)知識 隊列相關(guān)知識 總結(jié)棧相關(guān)知識1.棧相關(guān)知識l 棧: 限制僅在一端進(jìn)行插入和刪除運(yùn)算的線性表棧頂棧頂棧底棧底入棧入棧出棧出棧l 棧頂:進(jìn)行插入、刪除的一端l 棧底:除棧頂外的另一端.a2a1an棧是后進(jìn)先出表( LIFO ) 棧的概念棧的概念 棧的基本操作棧的基本操作1.棧相關(guān)知識l 置空棧 createEmptyStack(void):空棧;l 判???isEmptytack(st):這是一個布爾函數(shù)。若st為空棧,則函數(shù)值為“真”, 否則為“假”。l 入棧 push(st,x):在st的頂部插入(亦稱壓入)元素 x。l 出棧 po
2、p(st):刪除(亦稱彈出)棧st的頂部元素。l 取棧頂 top(st):取棧st的頂部元素。1.棧相關(guān)知識 棧的兩種實(shí)現(xiàn)方式棧的兩種實(shí)現(xiàn)方式順序棧和鏈棧 順序棧順序棧利用一組地址連續(xù)的存儲單元依次存放自棧頂?shù)綏5椎臄?shù)據(jù)元素。#define MAXNUM 100 /* 棧中能達(dá)到的最大容量棧中能達(dá)到的最大容量*/ typedef int DataType; /* 定義棧元素的數(shù)據(jù)類型定義棧元素的數(shù)據(jù)類型* /struct SeqStack /* 順序棧類型定義順序棧類型定義 */DataType sMAXNUM;int t; /*棧頂棧頂*/;typedef struct SeqStack,
3、*PSeqStack;PSeqStack pastack; /*指向順序棧的指針變量指向順序棧的指針變量*/t是 int型簡單變量 ,指向棧頂元素在棧中的位置(序號) 6 5 4 3 2 1 0-11.棧相關(guān)知識 順序棧順序棧約定:1、??諘r,t=-12、棧滿時,t=MAXNUM-13、棧頂元素:St4、若t=-1時,執(zhí)行出棧操作,產(chǎn)生“下溢”5、若t=MAXNUM-1時,執(zhí)行入棧,產(chǎn)生“上溢”ABCD入棧和出棧1.棧相關(guān)知識 鏈棧鏈棧棧的鏈?zhǔn)酱鎯Y(jié)構(gòu)稱為鏈棧。由于只能在鏈表頭部進(jìn)行操作,故鏈棧沒有必要像單鏈表那樣需附加頭結(jié)點(diǎn)。棧頂指針top就是鏈表的頭指針head。 typedef int
4、DataType; typedef struct Node /* 結(jié)點(diǎn)結(jié)構(gòu)結(jié)點(diǎn)結(jié)構(gòu) */ DataType info; pNode link; *pNode;struct LinkStack/* 鏈接棧類型定義鏈接棧類型定義 */pNode top;/* 指向棧頂結(jié)點(diǎn)指向棧頂結(jié)點(diǎn) */;typedef struct LinkStack *PLinkStack;棧的鏈接表示棧的鏈接表示 top info link .隊列相關(guān)知識2. 隊列相關(guān)知識l 隊列:只允許在表的一端進(jìn)行插入,而在另一端進(jìn)行刪除l 隊頭:允許刪除的一端l 隊尾:允許插入的一端出隊入隊隊頭隊尾a1 a2 an . 隊列是先進(jìn)先
5、出表(FIFO)2. 隊列相關(guān)知識 隊列的基本操作隊列的基本操作l 創(chuàng)建一個空隊列 Queue createEmptyQueue ( void ) l 判隊列是否為空隊列 int isEmptyQueue ( Queue qu ) l 往隊列中插入一個元素 void enQueue ( Queue qu, DataType x ) l 從隊列中刪除一個元素 void deQueue ( Queue qu ) l 求隊列頭部元素的值 DataType frontQueue ( Queue qu ) 2. 隊列相關(guān)知識 隊列的兩種實(shí)現(xiàn)方式隊列的兩種實(shí)現(xiàn)方式順序隊列和鏈隊列 順序隊列順序隊列隊列的順
6、序存儲結(jié)構(gòu)簡稱為順序隊列 由于隊列的隊頭和隊尾的位置均是變化的,因而要設(shè)置兩個指針,分別指示當(dāng)前隊頭元素和隊尾元素在向量空間中的位置。#define MAXNUM 100struct SeqQueue datatype qMAXNUM; int f, r;typedef struct SeqQueue *PSeqQueue;PSeqQueue sq;2. 隊列相關(guān)知識 順序隊列的入隊和出隊操作順序隊列的入隊和出隊操作隊列空: sq-f=0; sq-r=0; 入隊: sq-qsq-r=x; sq-r+; 出隊: sq-f+; 76543210frxryrf隊列長度:(sq-r) - (sq-f)
7、2. 隊列相關(guān)知識 鏈隊列鏈隊列隊列的鏈?zhǔn)酱鎯Y(jié)構(gòu)簡稱為鏈隊列,它是限制僅在表頭刪除和表尾插入的單鏈表。 顯然僅有單鏈表的頭指針不便于在表尾做插入操作,為此再增加一個尾指針,指向鏈表上的最后一個結(jié)點(diǎn)。于是,一個鏈隊列由一個頭指針和一個尾指針唯一地確定。typedef struct Node DataType info; pNodelink; *pNode;struct LinkQueue PNodef; PNoder;typedef struct LinkQueue, *PLinkQueue; k0 k1 k2 kn-1.ff總結(jié)3.總結(jié)棧是限制僅在一端進(jìn)行插入和刪除運(yùn)算的線性表,它是一種后進(jìn)先出(LIFO)的數(shù)據(jù)結(jié)構(gòu)。進(jìn)行插入、刪除的一端稱為棧頂。棧有兩種實(shí)現(xiàn)方式,分別為順序棧和鏈棧。隊列是只允許在表的一端進(jìn)行插入,而在另一端進(jìn)行刪除的線性表,它是一種先進(jìn)先出(FIFO)的數(shù)據(jù)結(jié)構(gòu),允許刪除的一端稱為隊頭,允許插入的一端稱為隊尾。隊列有兩種實(shí)現(xiàn)方式,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024游艇銷售及倉儲物流服務(wù)合同范本3篇
- 二零二五年度廚房設(shè)備進(jìn)出口貿(mào)易合同2篇
- 專業(yè)2024委托獵頭服務(wù)協(xié)議范本版
- 二零二五年股東股權(quán)解除及退股條件明確協(xié)議書3篇
- 個人租車合同2024年度版:租賃工程車具體條款3篇
- 2024版承包經(jīng)營權(quán)抵押合同
- 二零二五版?zhèn)€人房產(chǎn)抵押典當(dāng)經(jīng)營合同3篇
- 臺州科技職業(yè)學(xué)院《內(nèi)科學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年股權(quán)投資合同具體條款2篇
- 二零二五年度汽車環(huán)保技術(shù)改造投資合同3篇
- 醫(yī)療組長競聘
- 2024年業(yè)績換取股權(quán)的協(xié)議書模板
- 顳下頜關(guān)節(jié)疾?。谇活M面外科學(xué)課件)
- 工業(yè)自動化設(shè)備維護(hù)保養(yǎng)指南
- 2024人教新版七年級上冊英語單詞英譯漢默寫表
- 《向心力》參考課件4
- 2024至2030年中國膨潤土行業(yè)投資戰(zhàn)略分析及發(fā)展前景研究報告
- 2024年深圳中考數(shù)學(xué)真題及答案
- 土方轉(zhuǎn)運(yùn)合同協(xié)議書
- Module 3 Unit 1 Point to the door(教學(xué)設(shè)計)-2024-2025學(xué)年外研版(三起)英語三年級上冊
- 智能交通信號燈安裝合同樣本
評論
0/150
提交評論