




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)驗(yàn)報(bào)告填寫(xiě)說(shuō)明(實(shí)驗(yàn)項(xiàng)目名稱(chēng)、實(shí)驗(yàn)項(xiàng)目類(lèi)型必須與實(shí)驗(yàn)教學(xué)大綱保持一致)1.實(shí)驗(yàn)環(huán)境:實(shí)驗(yàn)用的軟、硬件環(huán)境。.實(shí)驗(yàn)?zāi)康模焊鶕?jù)實(shí)驗(yàn)教學(xué)大綱,寫(xiě)出實(shí)驗(yàn)的要求和目的。.實(shí)驗(yàn)原理:簡(jiǎn)要說(shuō)明本實(shí)驗(yàn)項(xiàng)目所涉及的理論知識(shí)。,實(shí)驗(yàn)方案:這是實(shí)驗(yàn)報(bào)告極其重要的容。對(duì)于驗(yàn)證性驗(yàn),要寫(xiě)清楚操作方法,需要經(jīng)過(guò)哪幾個(gè)步驟來(lái)實(shí)現(xiàn)其操作。對(duì)于設(shè)計(jì)性和綜合性實(shí)驗(yàn),還應(yīng)寫(xiě)出設(shè)計(jì)思路和設(shè)計(jì)方法。對(duì)于創(chuàng)新性實(shí)驗(yàn),還應(yīng)注明其創(chuàng)新點(diǎn)。.實(shí)驗(yàn)過(guò)程:寫(xiě)明執(zhí)行實(shí)驗(yàn)方案的實(shí)驗(yàn)過(guò)程。.實(shí)驗(yàn)結(jié)論:根據(jù)實(shí)驗(yàn)過(guò)程中得到的結(jié)果,做出結(jié)論。.實(shí)驗(yàn)小結(jié):本次實(shí)驗(yàn)的體會(huì)和建議。.指導(dǎo)教師評(píng)語(yǔ)及成績(jī):指導(dǎo)教師依據(jù)學(xué)生的實(shí)際報(bào)告內(nèi)容,給出本次實(shí)驗(yàn)報(bào)告的評(píng)價(jià)和成績(jī)。1實(shí)驗(yàn)環(huán)境:VC++6.02實(shí)驗(yàn)?zāi)康模赫莆斩骀湵淼奶攸c(diǎn)及基本運(yùn)算。3實(shí)驗(yàn)原理:typedefstructBiTNode{TElemTypedata;structBiTNode*lchild,*rchild;//左右孩子指針}BiTNode,*BiTree;typedefBiTreetypedefBiTreeSElemType;#defineSTACK_INIT_SIZE5#defineSTACKINCREMENT2typedefstruct{SElemType*base;的值為NULLSElemType*top;intstacksize;位}SqStack;//存儲(chǔ)空間初始分配量//存儲(chǔ)空間分配增量〃在棧構(gòu)造之前和銷(xiāo)毀之后,bsae〃棧頂指針〃當(dāng)前分配的存儲(chǔ)空間,以元素為單4實(shí)驗(yàn)方案:根據(jù)二叉鏈表的結(jié)構(gòu)編寫(xiě)主函數(shù),調(diào)用二叉鏈表的構(gòu)造空表算法,先序遍歷算法以及中序遍歷的遞歸與非遞歸算法,以及構(gòu)造空棧算法,判??账惴?,插入算法,驗(yàn)證算法的正確性。5實(shí)驗(yàn)過(guò)程:(1)編寫(xiě)算法以及主函數(shù)(2)編譯出錯(cuò)Configuration:二叉樹(shù)的遍歷-Win32Debugompiling:\Users\87058\Desktop\數(shù)據(jù)結(jié)構(gòu)'二叉樹(shù)的遍歷.cpp(139):errorC2065:,PrintElement,:\Users\87058\Desktop\數(shù)據(jù)結(jié)構(gòu)'二叉樹(shù)的遍歷.cpp(139):errorC2065:,PrintElement,:undeclaredidentifier二叉樹(shù)的遍歷?obj-1error(s),0warning(s)(3)查找錯(cuò)誤(4)改正錯(cuò)誤,重新編譯StatusPrintEle-inpnt(TElPinTi|p^〃最簡(jiǎn)單的函數(shù)printff^c"fe>:returnOK;>Con車(chē)iguratitin二一叉樹(shù)的畫(huà)歷一成曲?DehugCompiling二叉樹(shù)的遍歷-CPP二叉樹(shù)的遍歷?。網(wǎng)-0error(s),0warning(s)輸入測(cè)試數(shù)據(jù),驗(yàn)證結(jié)果,得出結(jié)論保存結(jié)果,寫(xiě)入實(shí)驗(yàn)報(bào)告中6實(shí)驗(yàn)結(jié)論7實(shí)驗(yàn)小結(jié)(收獲體會(huì))通過(guò)這次試驗(yàn),掌握了二叉鏈表的特點(diǎn)及基本運(yùn)算。8指導(dǎo)教師評(píng)語(yǔ)及成績(jī):評(píng)語(yǔ)評(píng)語(yǔ)等級(jí)優(yōu)良中及格不及格1.實(shí)驗(yàn)方案設(shè)計(jì)合理。2.實(shí)驗(yàn)過(guò)程記錄完整,分析透徹。3.實(shí)驗(yàn)結(jié)論正確。4.實(shí)驗(yàn)報(bào)告按時(shí)完成,字跡清楚,文字?jǐn)⑹隽鲿常瑢哟吻逦?/p>
附錄1:源程序#include"stdio.h"#include"stdlib.h"#defineOK1#defineOVERFLOW-1#defineERROR0typedefintStatus;typedefcharTElemType;typedefstructBiTNode{TElemTypedata;typedefBiTreeSElemType;#defineSTACK_INIT_SIZE#defineSTACKINCREMENTtypedefstruct{SElemType*base;NULLSElemType*top;intstacksize;}SqStack;structBiTNode*lchild,*rchild;//typedefBiTreeSElemType;#defineSTACK_INIT_SIZE#defineSTACKINCREMENTtypedefstruct{SElemType*base;NULLSElemType*top;intstacksize;}SqStack;〃當(dāng)前分配的存儲(chǔ)空間,以元素為單位StatusCreateBiTree(BiTree&T){//按先序次序輸入二叉樹(shù)中結(jié)點(diǎn)的值(一個(gè)字符),空格字符表示空數(shù)〃構(gòu)造二叉鏈表表示的二叉樹(shù)TTElemTypech;scanf("%c”,&ch);if(ch=='')T=NULL;else{if(!(T=(BiTNode*)malloc(sizeof(BiTNode))))exit(OVERFLOW);T->data=ch;//生成根結(jié)點(diǎn)CreateBiTree(T->lchild);//構(gòu)造左子樹(shù)CreateBiTree(T->rchild);//構(gòu)造右子樹(shù)}returnOK;}//CreateBitreeStatusPreOrderTraverse(BiTreeT,Status(*Visit)(TElemTypee)){//采用二叉鏈表存儲(chǔ)結(jié)構(gòu),Visit是對(duì)數(shù)據(jù)元素操作的應(yīng)用函數(shù)〃先序遍歷二叉樹(shù)T的遞歸算法,對(duì)每個(gè)元素調(diào)用函數(shù)Visit〃最簡(jiǎn)單的Visit函數(shù)是:_//StatusPrintElement(TElemTypee){//輸出元素e的值//printf(e);〃實(shí)用時(shí),加上格式串//returnOK;//}〃調(diào)用實(shí)例:PreOrderTraverse(T,PrintElement);if(T){if(Visit(T->data))if(PreOrderTraverse(T->lchild,Visit))if(PreOrderTraverse(T->rchild,Visit))returnOK;returnERROR;}elsereturnOK;}//PreOrderTraverseStatusInitStack(SqStack&S){〃構(gòu)造一個(gè)空棧S.base=(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType));if(!S.base)exit(OVERFLOW);//存儲(chǔ)分配失敗S.top=S.base;S.stacksize=STACK_INIT_SIZE;returnOK;}//InitStackStatusStackEmpty(SqStack&S){if(S.top==S.base)returnOK;returnERROR;}StatusGetTop(SqStackS,SElemType&e){〃若棧不空,則用e返回S的棧頂元素,并返回OK,否則返回ERRORif(S.top==S.base)returnERROR;e=*(S.top-1);returnOK;}//GetTopStatusPush(SqStack&S,SElemTypee){〃插入元素e為新的棧頂元素if(S.top-S.base>=S.stacksize){//棧滿(mǎn),追加存儲(chǔ)空間S.base=(SElemType*)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(SElemType));if(!S.base)exit(OVERFLOW);〃存儲(chǔ)分配失敗S.top=S.base+S.stacksize;S.stacksize+=STACKINCREMENT;}*S.top++=e;returnOK;}//PushStatusPop(SqStack&S,SElemType&e){〃若棧不空,則刪除S的棧頂元素,用e返回其值,并返回OK;否則返回ERRORif(S.top==S.base)returnERROR;e=*--S.top;returnOK;}//PopStatusInOrderTraverse1(BiTreeT,Status(*Visit)(TElemTypee))(//采用二叉鏈表存儲(chǔ)結(jié)構(gòu),Visit是對(duì)數(shù)據(jù)元素操作的應(yīng)用函數(shù)〃中序遍歷二叉樹(shù)T的非遞歸算法,對(duì)每個(gè)數(shù)據(jù)元素調(diào)用函數(shù)VisitBiTreep;SqStackS;InitStack(S);Push(S,T);//根指針進(jìn)棧while(!StackEmpty(S))(while(GetTop(S,p)&&p)Push(S,p->lchild);〃向左走到盡頭Pop(S,p);〃空指針退棧if(!StackEmpty(S)){〃訪(fǎng)問(wèn)結(jié)點(diǎn),向右一步Pop(S,p);if(!Visit(p->data))returnERROR;Push(S,p->rchild);}//if}//WhilereturnOK;}//InOrderTraverse1StatusInOrderTraverse2(BiTreeT,Status(*Visit)(TElemTypee)){〃中序遍歷二叉樹(shù)T的非遞歸算法,對(duì)每個(gè)數(shù)據(jù)元素調(diào)用函數(shù)VisitBiTreep;SqStackS;InitStack(S);p=T;while(p||!StackEmpty(S)){if(p){Push(S,p);p=p->lchild;}//根指針進(jìn)棧,遍歷左子樹(shù)else{〃根指針退棧,訪(fǎng)問(wèn)根結(jié)點(diǎn),遍歷右子樹(shù)Pop(S,p);if(!Visit(p->data))returnERROR;p=p->rchild;}//else}//whilereturnOK;}//INOrderTraverse2StatusPrintElement(TElemTypee){〃最簡(jiǎn)單的Visit函數(shù)printf("%c",e);returnOK;}voidmain(){BiTreeT;printf("pleaseinputchar:");CreateBiTree(T);printf("\n");printf("
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度信用卡聯(lián)名信用卡與專(zhuān)屬客戶(hù)關(guān)懷服務(wù)合同
- 二零二五年度勞動(dòng)合同解除及競(jìng)業(yè)限制合同模板
- 二零二五年度旅行社與旅行社旅游意外險(xiǎn)合作合同
- 2025年度電子商務(wù)就業(yè)人員勞動(dòng)合同范本
- 二零二五年度股權(quán)激勵(lì)計(jì)劃股份占比變更合同范本
- 二零二五年度辦公用品代理銷(xiāo)售服務(wù)合同
- 2025年度股東合作分紅與信息安全保障協(xié)議
- 二零二五年度辦公室文員企業(yè)財(cái)務(wù)支持聘用合同
- 私人宅基地買(mǎi)賣(mài)轉(zhuǎn)讓協(xié)議書(shū)(附2025年度宅基地確權(quán)登記服務(wù))
- 二零二五年度市政道路施工安全協(xié)議書(shū):包工頭與工人安全責(zé)任
- 甲狀腺腫瘤PPT課件
- 材料大課堂鈦合金(課堂PPT)
- NRC蛋雞飼養(yǎng)標(biāo)準(zhǔn)
- 城市燃?xì)夤こ瘫O(jiān)理實(shí)施細(xì)則
- 項(xiàng)目總工崗位職責(zé)
- 鋁合金和工藝課件:硬質(zhì)陽(yáng)極氧化處理
- (完整版)部編四年級(jí)語(yǔ)文下詞語(yǔ)表
- 高頻電子線(xiàn)路完整章節(jié)課件(胡宴如)
- 最新-路面標(biāo)線(xiàn)技術(shù)交底
- 鋁擠壓設(shè)備日常巡檢保養(yǎng)記錄
- 立風(fēng)井瓦斯管路安裝施工組織設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論