




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、中原工學(xué)院軟件學(xué)院實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)項(xiàng)目名稱 二叉樹(shù)的基本操作實(shí)現(xiàn)及其應(yīng)用課程名稱數(shù)據(jù)結(jié)構(gòu)學(xué)生學(xué)生學(xué)號(hào)所在班級(jí)學(xué)科專業(yè)任課教師完成日期一、實(shí)驗(yàn)?zāi)康?熟悉二叉樹(shù)結(jié)點(diǎn)的結(jié)構(gòu)和對(duì)二叉樹(shù)的基本操作。 2掌握對(duì)二叉樹(shù)每一種操作的具體實(shí)現(xiàn)。3學(xué)會(huì)利用遞歸方法編寫對(duì)二叉樹(shù)這種遞歸數(shù)據(jù)結(jié)構(gòu)進(jìn)行處理的算法。4.會(huì)用二叉樹(shù)解決簡(jiǎn)單的實(shí)際問(wèn)題。二、實(shí)驗(yàn)容題目一設(shè)計(jì)程序?qū)崿F(xiàn)二叉樹(shù)結(jié)點(diǎn)的類型定義和對(duì)二叉樹(shù)的基本操作 該程序包括二叉樹(shù)結(jié)構(gòu)類型以及每一種操作的具體的函數(shù)定義和主函數(shù) 1 按先序次序建立一個(gè)二叉樹(shù),2按 (A:先序B:中序C:后序)遍歷輸岀二叉樹(shù)的所有結(jié)點(diǎn)以上比做,以下選做求二叉樹(shù)中所有結(jié)點(diǎn)數(shù)求二叉樹(shù)的深度三、實(shí)驗(yàn)
2、步驟、數(shù)據(jù)結(jié)構(gòu)與核心算法的設(shè)計(jì)描述typedef struct nodechar data;struct node *lchild,*rchild;BinTNode, *BinTree; /定義二叉樹(shù)的指針BinTree CreatBinTree(void)/先序遍歷算法創(chuàng)建二叉樹(shù)void Preorder(BinTree T)先序遍歷void Inorder(BinTree T)中序遍歷void Postorder(BinTree T)后序遍歷int TreeDepth(BinTree T)求 深度(二)、函數(shù)調(diào)用及主函數(shù)設(shè)計(jì)程序調(diào)試及運(yùn)行結(jié)果分析勒序遍歷:de ba*后序謹(jǐn)歷, 二賈樹(shù)深度
3、科嚴(yán)J程一尺勒序遍歷:de ba*后序謹(jǐn)歷, 二賈樹(shù)深度科嚴(yán)J程一尺PJI刑八P點(diǎn)序列用三格鋰代;表王卩點(diǎn)xabed二冥樹(shù)創(chuàng)建成功T數(shù) 點(diǎn) 一 度 歷歷無(wú) 逅黑的 先中后t結(jié)九序遍歷;二叉樹(shù)節(jié)點(diǎn)數(shù)N如結(jié)果所示,該程序?qū)崿F(xiàn)了先序創(chuàng)建二叉樹(shù),先序遍歷,中序遍 歷,后序遍歷及求深度,求節(jié)點(diǎn)數(shù)等功能。(四)實(shí)驗(yàn)總結(jié) 該實(shí)驗(yàn)主要是對(duì)二叉樹(shù)的基本操作進(jìn)行了訓(xùn)練。在實(shí)驗(yàn)的過(guò)程中,我 熟悉了二叉樹(shù)的構(gòu)造方法,以及二叉樹(shù)的一些操作,通過(guò)此次實(shí)驗(yàn), 我對(duì)二叉樹(shù)的基本構(gòu)造方法以及怎么使用遞歸的方法有了更深的理 解。四、主要算法流程圖及程序清單1、主要算法流程圖+*先序遍歷 PreOrd&rQ中序遍歷 InOrder
4、Q后序遍歷 PostOrderQ12、程序清單#include#include#include typedef struct nodechar data;struct node *lchild,*rchild;BinTNode, *BinTree; /定義二叉樹(shù)的指針BinTree CreatBinTree(void)/先序遍歷算法創(chuàng)建二叉樹(shù) BinTree T; char ch;if(ch=getchar()= ) return(NULL);elseT=(BinTNode *)malloc(sizeof(BinTNode);T-data=ch;T-lchild=CreatBinTree();
5、/構(gòu)造左子樹(shù)T-rchild=CreatBinTree();/構(gòu)造右子樹(shù)return(T);/先序遍歷void Preorder(BinTree T)if(T)printf(%c,T-data);Preorder(T-lchild);Preorder(T-rchild);/中序遍歷void Inorder(BinTree T)if(T)Inorder(T-lchild);printf(%c,T-data);Inorder(T-rchild);/后序遍歷void Postorder(BinTree T)if(T)Postorder(T-lchild);Postorder(T-rchild);pr
6、intf(%c,T-data);int TreeDepth(BinTree T) int hl,hr,max;if(T)hl=TreeDepth(T-lchild); hr=TreeDepth(T-rchild); max=hlhr? hl:hr;NodeNum=NodeNum+1; return(max+1);else return(0);Int TreeNode(BinTree T)int NodeNum=0;if(T)TreeDepth(T-lchild);TreeDepth(T-rchild);NodeNum=NodeNum+1; return(NodeNum);elsereturn
7、0;/主函數(shù) void main()BinTree root;int i,depth,NodeNum;printf(創(chuàng)建二叉樹(shù);輸入節(jié)點(diǎn)序列(用空格鍵代表空節(jié)點(diǎn)):n); root=CreatBinTree();printf(二叉樹(shù)創(chuàng)建成功!nn);創(chuàng)建二叉樹(shù),返回根結(jié)點(diǎn)printf(tt*選擇操作*n);printf(tt*選擇操作*n);printf(tt1:先序遍歷n);printf(tt2:中序遍歷n);printf(tt3:后序遍歷n);printf(tt4:求樹(shù)的深度,節(jié)點(diǎn)數(shù)n); printf(ttO:結(jié)束n);printf(tt*汝printf(tt*汝*n);while(scanf(%d,&i)輸入菜單序號(hào)(0-4)switch (i)case 1: printf(先序遍歷:n);Preorder(root); break;case 2: printf(中序遍歷:n);Inorder(root); break;case 3: printf(后序遍歷:n );Postorder(root); break
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)轎車市場(chǎng)競(jìng)爭(zhēng)格局及發(fā)展趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)超市貨架行業(yè)競(jìng)爭(zhēng)格局及發(fā)展規(guī)模分析報(bào)告(權(quán)威版)
- 2025-2030年中國(guó)蘑菇型提取罐行業(yè)十三五規(guī)劃與發(fā)展前景分析報(bào)告
- 2025-2030年中國(guó)花粉市場(chǎng)運(yùn)行態(tài)勢(shì)及發(fā)展?jié)摿Ψ治鰣?bào)告
- 2025-2030年中國(guó)竹地板行業(yè)十三五規(guī)劃及發(fā)展建議分析報(bào)告
- 2025年陜西省安全員考試題庫(kù)及答案
- 柳州鐵道職業(yè)技術(shù)學(xué)院《數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南工藝美術(shù)職業(yè)學(xué)院《廣告史》2023-2024學(xué)年第二學(xué)期期末試卷
- 湘潭大學(xué)《生物制品營(yíng)銷》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025甘肅省安全員-C證考試(專職安全員)題庫(kù)附答案
- 高中主題班會(huì) 借哪吒精神燃開(kāi)學(xué)斗志!課件-高一下學(xué)期開(kāi)學(xué)第一課班會(huì)
- 2024年12月2025浙江湖州市長(zhǎng)興縣綜合行政執(zhí)法局公開(kāi)招聘輔助執(zhí)法人員8人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 濰坊2025年山東濰坊市產(chǎn)業(yè)技術(shù)研究院招聘7人筆試歷年參考題庫(kù)附帶答案詳解
- 《南非綜合簡(jiǎn)要介紹》課件
- 2023六年級(jí)數(shù)學(xué)下冊(cè) 第2單元 百分?jǐn)?shù)(二)綜合與實(shí)踐 生活與百分?jǐn)?shù)說(shuō)課稿 新人教版
- 二零二五年度醫(yī)療援助派駐服務(wù)協(xié)議4篇
- 2024年山東力明科技職業(yè)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 《災(zāi)害的概述》課件
- 國(guó)產(chǎn)氟塑料流體控制件生產(chǎn)企業(yè)
- 1投影的形成和分類投影的形成投影的分類工程中常用的投影圖28課件講解
- 貨物學(xué) 課件2.1貨物的分類
評(píng)論
0/150
提交評(píng)論