實驗二棧與佇列應用

2022-10-09 15:57:02 字數 1315 閱讀 9442

天津城建大學

計算機與資訊工程學院

實驗報告

課程名稱: 計算機技術基礎

實驗名稱

實驗型別: 驗證性□ 綜合性□ 設計性□

實驗室名稱:計算機實驗教學中心xx機房

班級學號

學生姓名

任課教師

成績實驗日期: 2013-10-18(周五)第一節

實驗二棧和佇列的實現

一、實驗目的

1. 理解棧和佇列的特性以及它們之間的差異,知道在何時使用哪種資料結構;

2. 掌握棧和佇列的順序儲存結構及其基本運算實現;

3. 注意棧滿和棧空的條件;

4. 重點掌握在順序隊上和鏈隊上實現佇列的基本運算演算法,注意迴圈隊隊滿和隊空的條件;

5. 靈活運用棧和佇列這兩種資料結構解決一些綜合應用問題。

二、實驗裝置、軟體環境

計算機,vs2005,vc++6.0

三、實驗內容

1.編寫乙個程式,實現順序棧的各類基本運算,並在此基礎上設計乙個主程式完成如下功能:

初始化棧s;

判斷棧s是否非空;

依次進棧元素a,b,c,d,e;

判斷棧s是否非空;

輸出棧長度;

輸出從棧頂到棧底元素;

輸出出棧序列;

判斷棧s是否非空;

釋放棧。

2.編寫乙個程式,實現順序環形佇列的各類基本運算,並在此基礎上設計乙個主程式完成如下功能:

1. 初始化佇列q ;

2. 判斷佇列q是否為空 ;

3. 依次進隊元素a,b,c ;

4. 出隊乙個元素,輸出該元素 ;

5. 輸出佇列q的元素個數 ;

6. 依次進佇列元素d,e,f ;

7. 輸出佇列q的元素個數 ;

8. 輸出出隊序列 ;

9. 釋放佇列。

四、注意問題

實驗前務必進行複習,重點複習以下內容:

1)棧和環形佇列的順序儲存結構及其基本運算實現

棧的順序儲存結構以及基本運算實現:

● 初始化棧

● 銷毀棧

● 求棧的長度

● 判斷棧是否為空

● 進棧(push)

● 出棧(pop)

● 顯示棧中元素

2)環形佇列的性質:

環形佇列的隊頭指標和隊尾指標初始化時都置為0 。

實驗要按時、獨立完成 !

五、實驗過程與實驗結果

1、演算法設計思路簡介

2、核心演算法設計描述

3、演算法的實現和測試結果與分析

(實驗過程中需要記錄部分程式的運**況,可以截圖)

資料結構實驗棧和佇列

實驗二第三章棧和佇列 一 棧 實驗原始碼 include include include define stack init size 100 define stackincrement 10 typedef int selemtype typedef int status typedef stru...

資料結構 棧與佇列

3311 請判斷下列表示式是否正確。輸入乙個表示式,表示式中包括 字母,數字,括號以及符號 判斷表達中各括號的位置是否遵循以下規則 1 各種括號左右數量相同。2 各種括號只能並列和巢狀,不能交差。輸入 只有一行,為乙個長度小於255的表示式。輸出 一行。如果表示式中各括號互相匹配,則輸出 yes 否...

資料結構第3章棧與佇列習題

9 設n個元素進棧序列是p1,p2,pn,其輸出序列是1,2,3,n,若p3 1,則p1的值 a 可能是2 b 一定是1 c 不可能是2 d 不可能是3 10 設n個元素進棧序列是p1,p2,pn,其輸出序列是1,2,3,n,若p3 3,則p1的值 a 可能是2 b 一定是2 c 不可能是1 d 一...