數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--二叉樹的遍歷(總18頁(yè)).docx
《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--二叉樹的遍歷(總18頁(yè)).docx》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--二叉樹的遍歷(總18頁(yè)).docx(18頁(yè)珍藏版)》請(qǐng)?jiān)趨R文網(wǎng)上搜索。
1、摘要針對(duì)現(xiàn)實(shí)世界中許多關(guān)系復(fù)雜的數(shù)據(jù),如人類社會(huì)的家譜,各種社會(huì)組織機(jī)構(gòu),博弈交通等復(fù)雜事物或過程以及客觀世界中廣泛存在的具有分支關(guān)系或?qū)哟翁匦缘膶?duì)象如操作系統(tǒng)的文件構(gòu)成、人工智能和算法分析的模型表示以及數(shù)據(jù)庫(kù)系統(tǒng)的信息組織形式等,用線性結(jié)構(gòu)難以把其中的邏輯關(guān)系表達(dá)出來,必須借助于數(shù)和圖這樣的非線性結(jié)構(gòu),因此在以模擬客觀世界問題,解決客觀世界問題為主要任務(wù)的計(jì)算機(jī)領(lǐng)域中樹型結(jié)構(gòu)是信息的一種重要組織形式,樹有著廣泛應(yīng)用。在樹型結(jié)構(gòu)的應(yīng)用中又以二叉樹最為常用。二叉樹是一種非常重要的非線性結(jié)構(gòu),所描述的數(shù)據(jù)有明顯的層次關(guān)系,其中的每個(gè)元素只有一個(gè)前驅(qū),二叉樹是最為常用的數(shù)據(jù)結(jié)構(gòu),它的實(shí)際應(yīng)用非常廣泛
2、,二叉樹的遍歷方式有三種,前序遍歷,中序遍歷,后序遍歷,先序遍歷的順序?yàn)椋篘LR先根結(jié)點(diǎn),然后左子樹,右子樹;中序遍歷順序?yàn)?;LNR先左子樹,然后根結(jié)點(diǎn),右子樹;后序遍歷順序?yàn)椋篖RN先左子樹,然后右子樹,根結(jié)點(diǎn)。由前序和中序遍歷,有中序和后序遍歷序列可以唯一確定一棵二叉樹。對(duì)于給幾個(gè)數(shù)據(jù)的排序或在已知的幾個(gè)數(shù)據(jù)中進(jìn)行查找,二叉樹均能提供一種十分有效的方法,比如在查找問題上,任何借助于比較法查找長(zhǎng)度為的一個(gè)序表的算法,都可以表示成一株二叉樹。反之,任何二叉樹都對(duì)應(yīng)一個(gè)查找有序表的有效方法根據(jù)樹的數(shù)學(xué)理論,對(duì)于算法分析的某些最有啟發(fā)性的應(yīng)用,是與給出用于計(jì)算各種類型中不同樹的數(shù)目的公式有關(guān)的。本
3、文對(duì)二叉樹以及二叉樹的各種功能做介紹以及寫出一些基本的程序,讓我們對(duì)二叉樹的理解有更好的效果。關(guān)鍵詞:二叉樹的遍歷;左子樹;右子樹;遞歸I目錄1.問題概述31.1問題描述31.2需求分析31.3設(shè)計(jì)內(nèi)容和要求31.4流程圖及結(jié)構(gòu)圖32.概要設(shè)計(jì)32.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì):32.2源程序代碼33.調(diào)試分析33.1調(diào)試中的問題34.測(cè)試結(jié)果3總結(jié)3參考文獻(xiàn)3181.問題概述1.1問題描述創(chuàng)建二叉樹并遍歷基本要求:該程序集成了如下功能:(1)二叉樹的建立(2)遞歸和非遞歸先序,中序和后序遍歷二叉樹(3)按層次遍歷二叉樹(4)交換二叉樹的左右子樹(5)輸出葉子結(jié)點(diǎn)(6)遞歸和非遞歸計(jì)算葉子結(jié)點(diǎn)的數(shù)目1.2需
4、求分析分先序遍歷,中序遍歷和后序遍歷三種情況考慮。1. 先序遍歷,當(dāng)二叉樹非空時(shí)按以下順序遍歷,否則結(jié)束操作:1 訪問根結(jié)點(diǎn);2 按先序遍歷規(guī)則遍歷左子樹;3 按先序遍歷規(guī)則遍歷右子樹;2. 中序遍歷,當(dāng)二叉樹非空時(shí)按以下順序遍歷,否則結(jié)束操作:1 按中序遍歷規(guī)則遍歷左子樹;2 訪問根結(jié)點(diǎn);3 按中序遍歷規(guī)3遍歷右子樹。3. 后序遍歷,當(dāng)二叉樹非空時(shí)按以下順序遍歷,否則結(jié)束操作:1 按后序遍歷規(guī)則遍歷左子樹;2 按后序遍歷規(guī)則遍歷右子樹;3 訪問根結(jié)點(diǎn)。1.3設(shè)計(jì)內(nèi)容和要求對(duì)任意給定的二叉樹(頂點(diǎn)數(shù)自定)建立它的二叉鏈表存貯結(jié)構(gòu),并利用棧的五種基本運(yùn)算(清空堆棧、壓棧、彈出、取棧頂元素、判???/p>
5、)實(shí)現(xiàn)二叉樹的先序、中序、后序三種周游,輸出三種周游的結(jié)果。1.4流程圖及結(jié)構(gòu)圖YESYESNONO開始i=0inbtreetypenewNodeMultiplexroot=newNodei+結(jié)束是否為空returnroot圖1.1 流程圖 b c d e f a圖1.2二叉鏈表存儲(chǔ)結(jié)構(gòu)模擬圖2.概要設(shè)計(jì)2.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì):1二叉樹結(jié)點(diǎn)數(shù)據(jù)類型定義為:templatestructBiNodeBiNode*rchild,*lchild;/指向左孩子的指針Tdata;/結(jié)點(diǎn)數(shù)據(jù)信息;2二叉樹數(shù)據(jù)類型定義為:templateclassBiTreetemplatefriendostream&opera
- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
20 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 數(shù)據(jù)結(jié)構(gòu) 課程設(shè)計(jì) 二叉 遍歷 18
鏈接地址:http://zhizhaikeji.com/p-3464305.html