算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書下載 數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書及答案(5篇)_第1頁
算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書下載 數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書及答案(5篇)_第2頁
算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書下載 數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書及答案(5篇)_第3頁
算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書下載 數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書及答案(5篇)_第4頁
算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書下載 數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書及答案(5篇)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

本文格式為Word版,下載可任意編輯——算法與數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書下載數(shù)據(jù)結(jié)構(gòu)試驗(yàn)指導(dǎo)書及答案(5篇)無論是身處學(xué)校還是步入社會(huì),大家都嘗試過寫作吧,借助寫作也可以提高我們的語言組織能力。大家想知道怎么樣才能寫一篇比較優(yōu)質(zhì)的范文嗎?下面我給大家整理了一些優(yōu)秀范文,希望能夠幫助到大家,我們一起來看一看吧。

loc=i;for(i=;i=loc;i--)[i+1]=[i];[loc]=x;++;}voiddelete_x(intx){inti,j,found=0;for(i=0;i=;i++)if(x==[i]){found=1;for(j=i+1;j=;j++)[j-1]=[j];i--;--;}if(found==0)printf(“xisnotfoundn〞);else{printf(“xisdeletedn〞);printf(“thelistafterdeletionis:n〞);print_list();

}}

voidmain(){intx,choice;while(1){printf(“**********menu**********n〞);printf(“1--printn〞);printf(“2--searchn〞);printf(“3--insertn〞);printf(“4--deleten〞);printf(“5--exitn〞);printf(“pleaseinputyourchoice:〞);scanf(“%d〞,choice);

switch(choice){case1:printf(“theoriginallistis:n〞);print_list();break;case2:printf(“plsinputxyouwanttosearch:n〞);

scanf(“%d〞,x);find_all_x(x);break;case3:printf(“plsinputxyouwanttoinsert:n〞);scanf(“%d〞,x);insert_x(x);printf(“thelistafterinsertionis:n〞);print_list();break;case4:printf(“plsinputxyouwanttodelete:n〞);scanf(“%d〞,x);delete_x(x);printf(“thelistafterdeletionis:n〞);print_list();break;case5:exit(0);}}}

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:單鏈表試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)2單鏈表

一、試驗(yàn)?zāi)康暮鸵?/p>

1、試驗(yàn)?zāi)康?/p>

把握單鏈表的定位、插入、刪除等操作。

2、試驗(yàn)要求

(1)注意鏈表的空間是動(dòng)態(tài)分派的,某結(jié)點(diǎn)不用之后要及時(shí)進(jìn)行物理刪除,以便釋放其內(nèi)存空間。

(2)鏈表不能實(shí)現(xiàn)直接定位,一定注意指針的保存,防止丟失。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

(1)編寫程序建立一個(gè)單鏈表,并逐個(gè)輸出單鏈表中所有數(shù)據(jù)元素。(2)在遞增有序的單鏈表中插入一個(gè)新結(jié)點(diǎn)x,保持單鏈表的有序性。

解題思路:首先查找插入的位置然后進(jìn)行插入操作;從第一個(gè)結(jié)點(diǎn)開始找到第一個(gè)大于該新結(jié)點(diǎn)值的結(jié)點(diǎn)即為插入位置;然后在找到的此結(jié)點(diǎn)之前插入新結(jié)點(diǎn);注意保存插入位置之前結(jié)點(diǎn)的指針才能完成插入操作。

(3)編寫實(shí)現(xiàn)帶頭結(jié)點(diǎn)單鏈表就地逆置的子函數(shù),并編寫主函數(shù)測(cè)試結(jié)果。

2、選做題

已知指針la和lb分別指向兩個(gè)無頭結(jié)點(diǎn)單鏈表的首元結(jié)點(diǎn)。要求編一算法實(shí)現(xiàn),從表la中刪除自第i個(gè)元素起共len個(gè)元素后,將它們插入到表lb中第j個(gè)元素之前。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:堆棧和隊(duì)列試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)3堆棧和隊(duì)列

一、試驗(yàn)?zāi)康暮鸵?/p>

(1)把握應(yīng)用棧解決問題的方法。(2)把握利用棧進(jìn)行表達(dá)式求和的算法。

(3)把握隊(duì)列的存儲(chǔ)結(jié)構(gòu)及基本操作實(shí)現(xiàn),并能在相應(yīng)的應(yīng)用問題中正確選用它們。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

(1)判斷一個(gè)算術(shù)表達(dá)式中開括號(hào)和閉括號(hào)是否配對(duì)。(2)測(cè)試“漢諾塔〞問題。

(3)假設(shè)稱正讀和反讀都一致的字符序列為〞回文〞,試寫一個(gè)算法判別讀入的一個(gè)以’@’為終止符的字符序列是否是“回文〞。

2、選做題

在順序存儲(chǔ)結(jié)構(gòu)上實(shí)現(xiàn)輸出受限的雙端循環(huán)隊(duì)列的入列和出列算法。設(shè)每個(gè)元素表示一個(gè)待處理的作業(yè),元素值表示作業(yè)的預(yù)計(jì)時(shí)間。入隊(duì)列采取簡化的短作業(yè)優(yōu)先原則,若一個(gè)新提交的作業(yè)的預(yù)計(jì)執(zhí)行時(shí)間小于隊(duì)頭和隊(duì)尾作業(yè)的平均時(shí)間,則插入在隊(duì)頭,否則插入在隊(duì)尾。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:串試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)4串

一、試驗(yàn)?zāi)康暮鸵?/p>

把握串的存儲(chǔ)及應(yīng)用。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

(1)編寫輸出字符串s中值等于字符ch的第一個(gè)字符的函數(shù),并用主函數(shù)測(cè)試結(jié)果。

(2)編寫輸出字符串s中值等于字符ch的所有字符的函數(shù),并用主函數(shù)測(cè)試結(jié)果。

解題思路:可以將第一題程序改進(jìn)成一個(gè)子函數(shù),在此題中循環(huán)調(diào)用。(3)設(shè)字符串采用單字符的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu),編程刪除串s從位置i開始長度為k的子串。

2、選做題

假設(shè)以鏈結(jié)構(gòu)表示串,編寫算法實(shí)現(xiàn)將串s插入到串t中某個(gè)字符之后,若串t中不存在這個(gè)字符,則將串s聯(lián)接在串t的末尾。

提醒:為提高程序的通用性,插入位置字符應(yīng)設(shè)計(jì)為從鍵盤輸入。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:二叉樹試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)5二叉樹

一、試驗(yàn)?zāi)康暮鸵?/p>

(1)把握二叉樹的生成,以及前、中、后序遍歷算法。(2)把握應(yīng)用二叉樹遞歸遍歷思想解決問題的方法。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

(1)建立一棵二叉樹。對(duì)此樹進(jìn)行前序遍歷、中序遍歷及后序遍歷,輸出遍歷序列。

(2)在第一題基礎(chǔ)上,求二叉樹中葉結(jié)點(diǎn)的個(gè)數(shù)。(3)在第一題基礎(chǔ)上,求二叉樹中結(jié)點(diǎn)總數(shù)。(4)在第一題基礎(chǔ)上,求二叉樹的深度。

2、選做題

已知一棵完全二叉樹存于順序表sa中,[1…]存儲(chǔ)結(jié)點(diǎn)的值。試編寫算法由此順序存儲(chǔ)結(jié)構(gòu)建立該二叉樹的二叉鏈表。

解題思路:根據(jù)完全二叉樹順序存儲(chǔ)的性質(zhì)來確定二叉樹的父子關(guān)系即“還原〞了二叉樹,之后再依照二叉樹二叉鏈表的構(gòu)造方法進(jìn)行建立。完全二叉樹順序存儲(chǔ)的一個(gè)重要性質(zhì)為,第i個(gè)結(jié)點(diǎn)的左孩子是編號(hào)為2i的結(jié)點(diǎn),第i個(gè)結(jié)點(diǎn)的右孩子是編號(hào)為2i+1的結(jié)點(diǎn)。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:圖試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)6圖

一、試驗(yàn)?zāi)康暮鸵?/p>

(1)熟練把握?qǐng)D的基本概念、構(gòu)造及其存儲(chǔ)結(jié)構(gòu)。

(2)熟練把握對(duì)圖的深度優(yōu)先探尋遍歷和廣度優(yōu)先探尋遍歷的算法。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

(1)構(gòu)造一個(gè)無向圖(用鄰接矩陣表示存儲(chǔ)結(jié)構(gòu))。

(2)對(duì)上面所構(gòu)造的無向圖,進(jìn)行深度優(yōu)先遍歷和廣度優(yōu)先遍歷,輸出遍歷序列。

2、選做題

采用鄰接表存儲(chǔ)結(jié)構(gòu),編寫一個(gè)判別無向圖中任意給定的兩個(gè)頂點(diǎn)之間是否存在一條長度為k的簡單路徑的算法。簡單路徑是指其頂點(diǎn)序列中不含有重復(fù)頂點(diǎn)的路徑。提醒:兩個(gè)頂點(diǎn)及k值均作為參數(shù)給出。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:排序試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)7排序

一、試驗(yàn)?zāi)康暮鸵?/p>

(1)熟練把握希爾排序、堆排序、直接插入排序、起泡排序、快速排序、直接選擇排序、歸并排序和基數(shù)排序的基本概念。

(2)把握以上各種排序的算法。區(qū)分以上不同排序的優(yōu)、缺點(diǎn)。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

用隨機(jī)數(shù)產(chǎn)生100000個(gè)待排序數(shù)據(jù)元素的關(guān)鍵字值。測(cè)試以下各排序函數(shù)的機(jī)器實(shí)際執(zhí)行時(shí)間(至少測(cè)試兩個(gè)):直接插入排序、希爾排序(增量為4,2,1)、冒泡排序、快速排序、直接選擇排序、堆排序。

2、選做題

假設(shè)含n個(gè)記錄的序列中,其所有關(guān)鍵字為值介于v和w之間的整數(shù),且其中好多關(guān)鍵字的值是一致的。則可按如下方法排序:另設(shè)數(shù)組number[v…w],令number[i]統(tǒng)計(jì)關(guān)鍵字為整數(shù)i的紀(jì)錄個(gè)數(shù),然后按number重排序列以達(dá)到有序。試編寫算法實(shí)現(xiàn)上述排序方法,并探討此種方法的優(yōu)缺點(diǎn)。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

試驗(yàn)項(xiàng)目名稱:查找試驗(yàn)學(xué)時(shí):2同組學(xué)生姓名:試驗(yàn)地點(diǎn):試驗(yàn)日期:試驗(yàn)成績:批改教師:批改時(shí)間:

試驗(yàn)8查找

一、試驗(yàn)?zāi)康暮鸵?/p>

(1)把握順序表查找、有序表查找、索引順序表查找的各種算法。(2)把握哈希表設(shè)計(jì)。

二、試驗(yàn)儀器和設(shè)備

turboc2.0/visualc++

三、試驗(yàn)內(nèi)容與過程(含程序清單及流程圖)

1、必做題

(1)在一個(gè)遞增有序的線性表中利用二分查找法查找數(shù)據(jù)元素x。

2、選做題

(2)構(gòu)造一個(gè)哈希表,哈希函數(shù)采用除留余數(shù)法,哈希沖突解決方法采用鏈地址法。設(shè)計(jì)一個(gè)測(cè)試程序進(jìn)行測(cè)試。

提醒:構(gòu)造哈希表只是完成查找的第一步,大家應(yīng)當(dāng)把握在哈希表上進(jìn)行查找的過程,可以試著編程序?qū)崿F(xiàn)。程序清單:

四、試驗(yàn)結(jié)果與分析(程序運(yùn)行結(jié)果及其分析)

五、試驗(yàn)體會(huì)(遇到問題及解決方法,編程后的心得體會(huì))

multi_setmult_set::operator+(multi_setconsta,multi_setconstb);

templatemulti_setmult_set::operator-(multi_setconsta,multi_setconstb);

templatemulti_set::operator-(multi_setconsta,tconstv);

十、驗(yàn)收及試驗(yàn)報(bào)告要求:現(xiàn)場操作及運(yùn)行效果驗(yàn)收。要求程序必需上機(jī)編譯通過并且正確運(yùn)行。給出試驗(yàn)報(bào)告。給出平衡排序二叉樹實(shí)現(xiàn)的多重集合和用哈希實(shí)現(xiàn)的多重集合的性能比較。

試驗(yàn)

八、圖論

一、試驗(yàn)類別:設(shè)計(jì)型試驗(yàn)。

二、問題描述:實(shí)現(xiàn)圖論中的各種算法。

1)最小代價(jià)生成樹的krscal算法和prim算法。2)單源點(diǎn)的最短路徑的dijstra算法。3)深度優(yōu)先遍歷與廣度優(yōu)先遍歷。4)拓?fù)渑判?/p>

5)求所有節(jié)點(diǎn)之間的最短路徑floyd算法

(在這五個(gè)小題中只要選作一個(gè)即可。)

三、試驗(yàn)?zāi)康模簩W(xué)習(xí)根據(jù)不同的運(yùn)算來選取不同的存儲(chǔ)結(jié)構(gòu)。

四、試驗(yàn)學(xué)時(shí):2小時(shí)

五、試驗(yàn)組人數(shù):3人。

六、試驗(yàn)設(shè)備環(huán)境:計(jì)算機(jī)。

七、試驗(yàn)原理及要點(diǎn)(知識(shí)點(diǎn)):圖論中的各種算法及其繁雜度。根據(jù)不同的操作來決定圖的存儲(chǔ)結(jié)構(gòu)。

八、試驗(yàn)內(nèi)容和要求:至少實(shí)現(xiàn)上面五個(gè)小題目中的一個(gè)。從文件中讀入一個(gè)圖的信息。

九、可研究與摸索的問題:高級(jí)數(shù)據(jù)結(jié)構(gòu)如堆、并查集在圖論算法中的應(yīng)用。

十、驗(yàn)收及試驗(yàn)報(bào)告要求:現(xiàn)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論