下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
本文格式為Word版,下載可任意編輯——數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)之二叉排序樹的實(shí)現(xiàn)
中南大學(xué)信息科學(xué)與工程學(xué)院
課題名稱:學(xué)班學(xué)姓
院:級(jí):號(hào):名:
二叉排序樹的實(shí)現(xiàn)信息科學(xué)與工程學(xué)院通信工程
指導(dǎo)老師:
漆華妹
完成日期——2023年7月10日
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
一、引言
數(shù)據(jù)結(jié)構(gòu)是一門理論性強(qiáng)、思維抽象、難度較大的課程,是基礎(chǔ)課和專業(yè)課之間的橋梁。該課程的先行課程是計(jì)算機(jī)基礎(chǔ)、程序設(shè)計(jì)語言、離散數(shù)學(xué)等,后續(xù)課程有操作系統(tǒng)、編譯原理、數(shù)據(jù)庫原理、軟件工程等。通過本門課程的學(xué)習(xí),我們應(yīng)當(dāng)能透徹地理解各種數(shù)據(jù)對(duì)象的特點(diǎn),學(xué)會(huì)數(shù)據(jù)的組織方法和實(shí)現(xiàn)方法,并進(jìn)一步培養(yǎng)良好的程序設(shè)計(jì)能力和解決實(shí)際問題的能力。
數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)的一門核心專業(yè)基礎(chǔ)課程,在該專業(yè)的課程體系中起著承上啟下的作用,學(xué)好數(shù)據(jù)結(jié)構(gòu)對(duì)于提高理論認(rèn)知水平和實(shí)踐能力有著極為重要的作用。學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的最終目的是為了獲得求解問題的能力。對(duì)于現(xiàn)實(shí)世界中的問題,應(yīng)當(dāng)能從中抽象出一個(gè)適當(dāng)?shù)臄?shù)學(xué)模型,該數(shù)學(xué)模型在計(jì)算機(jī)內(nèi)部用相應(yīng)的數(shù)據(jù)結(jié)構(gòu)來表示,然后設(shè)計(jì)一個(gè)解此數(shù)學(xué)模型的算法,再進(jìn)行編程調(diào)試,最終獲得問題的解答。
實(shí)習(xí)課程是為了加強(qiáng)編程能力的培養(yǎng),勉勵(lì)學(xué)生使用新興的編程語言。相信通過數(shù)據(jù)結(jié)構(gòu)課程實(shí)踐,無論是理論知識(shí),還是實(shí)踐動(dòng)手能力,我們都會(huì)有不同程度上的提高。
二、課程設(shè)計(jì)目的
本課程是數(shù)據(jù)結(jié)構(gòu)課程的實(shí)踐環(huán)節(jié)。主要目的在于加強(qiáng)學(xué)生在課程中學(xué)習(xí)的相關(guān)算法和這些方法的具體應(yīng)用,使學(xué)生進(jìn)一步把握在C++或其他語言中應(yīng)用這些算法的能力。通過課程設(shè)計(jì)題目的練習(xí),加強(qiáng)學(xué)生對(duì)所學(xué)知識(shí)的把握及對(duì)問題分析和任務(wù)定義的理解。
第2頁共15頁
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
三、問題描述及基本要求
二叉排序樹的實(shí)現(xiàn):用順序和二叉鏈表作存儲(chǔ)結(jié)構(gòu)
1)以回車(?\\n?)為輸入終止標(biāo)志,輸入數(shù)列L,生成一棵二叉排序樹T;2)對(duì)二叉排序樹T作中序遍歷,輸出結(jié)果;
3)輸入元素x,查找二叉排序樹T,若存在含x的結(jié)點(diǎn),則刪除該結(jié)點(diǎn),并作中序遍歷(執(zhí)行操作2);否則輸出信息“無x〞。
一、問題分析和任務(wù)定義
在設(shè)計(jì)之前,首先應(yīng)當(dāng)充分地分析和理解問題,明確問題要求做什么?限制條件是什么?對(duì)所需完成的任務(wù)作出明確的回復(fù)。二、系統(tǒng)設(shè)計(jì)
系統(tǒng)設(shè)計(jì)分為規(guī)律設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩步。規(guī)律設(shè)計(jì)指的是,對(duì)問題描述中的操作對(duì)象定義相應(yīng)的數(shù)據(jù)類型,并依照以數(shù)據(jù)結(jié)構(gòu)為中心的原則劃分模塊,定義軟件模塊結(jié)構(gòu)圖;詳細(xì)設(shè)計(jì)則為定義相應(yīng)的存儲(chǔ)結(jié)構(gòu),并寫出各函數(shù)模塊的偽碼算法。三、編碼實(shí)現(xiàn)和調(diào)試
四、軟件模塊結(jié)構(gòu)圖
第3頁共15頁
數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
主程序模塊初始化模塊CreateBST()中序遍歷二叉排序樹inorder()查找元素xBSTSearch()中序遍歷二叉排序樹inorder()
五、程序設(shè)計(jì)流程圖(設(shè)計(jì)思想)
二叉鏈表作存儲(chǔ)結(jié)構(gòu)和順序表作存儲(chǔ)結(jié)構(gòu)輸入數(shù)列L,以回車(‘\\\\n’)為輸入終止標(biāo)志生成二叉排序樹T;對(duì)二叉排序樹T作中序遍歷,并輸出結(jié)果
輸入元素x,查找二叉排序樹T找到該節(jié)點(diǎn)x無結(jié)點(diǎn)x存在含x的結(jié)點(diǎn),則刪除該第4頁共15頁結(jié)點(diǎn),并作中序遍歷數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
詳細(xì)設(shè)計(jì)思想:
建立二叉排序樹采用邊查找邊插入的方式。查找函數(shù)采用遞歸的方式進(jìn)行查找。假使查找到相等的則插入其左子樹。然后利用插入函數(shù)將該元素插入原樹。
對(duì)二叉樹進(jìn)行中序遍歷采用遞歸函數(shù)的方式。在根結(jié)點(diǎn)不為空的狀況下,先訪問左子樹,再訪問根結(jié)點(diǎn),最終訪問右子樹。
刪除結(jié)點(diǎn)函數(shù),采用邊查找邊刪除的方式。假使沒有查找到,進(jìn)行提醒;假使查找到結(jié)點(diǎn)則將其左子樹最右邊的節(jié)點(diǎn)的數(shù)據(jù)傳給它,然后刪除其左子樹最右邊的節(jié)點(diǎn)。
六、源代碼
1、用二叉鏈表存儲(chǔ)結(jié)構(gòu)實(shí)現(xiàn)
#includetypedefintKeyType;
typedefcharElemType[10];typedefstructtnode{
KeyTypekey;ElemTypedata;
structtnode*lchild,*rchild;}BSTNode;
voidBSTdisp(BSTNode*b);
BSTNode*BSTSearch(BSTNode*bt,KeyTypek){
BSTNode*p=bt;
while(p!=NULL/*沿左子樹查找*/else
p=p->rchild;/*沿右子樹查找*/}
return(p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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年新能源汽車租賃與政府補(bǔ)貼申請(qǐng)服務(wù)合同3篇
- 2025年度房地產(chǎn)經(jīng)紀(jì)個(gè)人勞務(wù)用工合同范本2篇
- 2025年水電工程信息化建設(shè)與維護(hù)承包合同范本3篇
- 2025年度個(gè)人果園果樹修剪與病蟲害防治一體化服務(wù)合同4篇
- 工廠轉(zhuǎn)讓協(xié)議書(2篇)
- 二零二五版城市更新改造項(xiàng)目融資合同范本4篇
- 2025年度個(gè)人抵押貸款擔(dān)保合同4篇
- 二零二五年房產(chǎn)交易市場(chǎng)參展商合作保障協(xié)議3篇
- 《建設(shè)工程施工合同糾紛事實(shí)查明的思路與方法》理解與適用
- 2025年行政管理制度范本:教育機(jī)構(gòu)管理規(guī)范3篇
- 2024版塑料購銷合同范本買賣
- 【高一上】【期末話收獲 家校話未來】期末家長會(huì)
- JJF 2184-2025電子計(jì)價(jià)秤型式評(píng)價(jià)大綱(試行)
- GB/T 44890-2024行政許可工作規(guī)范
- 有毒有害氣體崗位操作規(guī)程(3篇)
- 兒童常見呼吸系統(tǒng)疾病免疫調(diào)節(jié)劑合理使用專家共識(shí)2024(全文)
- 2025屆山東省德州市物理高三第一學(xué)期期末調(diào)研模擬試題含解析
- 《華潤集團(tuán)全面預(yù)算管理案例研究》
- 2024-2025高考英語全國卷分類匯編之完型填空(含答案及解析)
- 二年級(jí)下冊(cè)加減混合豎式練習(xí)360題附答案
- 蘇教版五年級(jí)數(shù)學(xué)下冊(cè)解方程五種類型50題
評(píng)論
0/150
提交評(píng)論