![數(shù)據(jù)結(jié)構(gòu)試驗(yàn)---折半查找試驗(yàn)報(bào)告_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/5e77a642-15e9-4793-9c38-3204e1da4187/5e77a642-15e9-4793-9c38-3204e1da41871.gif)
![數(shù)據(jù)結(jié)構(gòu)試驗(yàn)---折半查找試驗(yàn)報(bào)告_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/5e77a642-15e9-4793-9c38-3204e1da4187/5e77a642-15e9-4793-9c38-3204e1da41872.gif)
![數(shù)據(jù)結(jié)構(gòu)試驗(yàn)---折半查找試驗(yàn)報(bào)告_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/5e77a642-15e9-4793-9c38-3204e1da4187/5e77a642-15e9-4793-9c38-3204e1da41873.gif)
![數(shù)據(jù)結(jié)構(gòu)試驗(yàn)---折半查找試驗(yàn)報(bào)告_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/5e77a642-15e9-4793-9c38-3204e1da4187/5e77a642-15e9-4793-9c38-3204e1da41874.gif)
![數(shù)據(jù)結(jié)構(gòu)試驗(yàn)---折半查找試驗(yàn)報(bào)告_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-3/13/5e77a642-15e9-4793-9c38-3204e1da4187/5e77a642-15e9-4793-9c38-3204e1da41875.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、深圳大學(xué)實(shí)驗(yàn)報(bào)告課程名稱:數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)項(xiàng)目名稱:查找排序之折半查找學(xué)院:信息工程學(xué)院專業(yè):電子信息工程指導(dǎo)教師:報(bào)告人:學(xué)號(hào):2009100000班級(jí):電子1班實(shí)驗(yàn)時(shí)間:2011年12月2日實(shí)驗(yàn)報(bào)告提交時(shí)間:2011年12月13日教務(wù)處制一、實(shí)驗(yàn)?zāi)康呐c要求:實(shí)驗(yàn)?zāi)康模和ㄟ^編程實(shí)現(xiàn)折半查找算法,掌握順序查找方法的理論原理和實(shí)現(xiàn)過程,從而加深對(duì)順序查找方法的理解,提高折半查找方法的編程應(yīng)用技巧。實(shí)驗(yàn)要求:仔細(xì)閱讀程序框架代碼,完成框架中的代碼編寫要求,結(jié)果圖參考示例,請(qǐng)輸入多組數(shù)據(jù)檢測算法,要驗(yàn)證查找成功和不成功的情況。根據(jù)要求編寫程序?qū)崿F(xiàn)折半查找算法,輸入測試數(shù)據(jù)驗(yàn)證算法正確性,并進(jìn)行代碼分析和
2、結(jié)果說明。二、方法、步驟:折半查找算法的原理:折半查找的算法思想是將數(shù)列按有序化(遞增或遞減)排列,查找過程中采用跳躍式方式查找,即先以有序數(shù)列的中點(diǎn)位置為比較對(duì)象,如果要找的元素值小于該中點(diǎn)元素,則將待查序列縮小為左半部分,否則為右半部分。通過一次比較,將查找區(qū)間縮小一半。折半查找是一種高效的查找方法。它可以明顯減少比較次數(shù),提高查找效率。第一、首先確定整個(gè)查找區(qū)間的中間位置mid=(low+high)/2第二、用待查關(guān)鍵字值與中間位置的關(guān)鍵字值進(jìn)行比較;若相等,則查找成功若大于,則在后(右)半個(gè)區(qū)域繼續(xù)進(jìn)行折半查找若小于,則在前(左)半個(gè)區(qū)域繼續(xù)進(jìn)行折半查找第三、對(duì)確定的縮小區(qū)域再按折半公
3、式,重復(fù)上述步驟。最后,得到結(jié)果:要么查找成功,要么查找失敗。三.實(shí)驗(yàn)過程及內(nèi)容:(對(duì)程序代碼進(jìn)行說明和分析,越詳細(xì)越好,代碼排版要整齊,可讀性要高)1、詳細(xì)閱讀折半查找算法的實(shí)現(xiàn)過程2、詳細(xì)閱讀老師提供的程序框架3、根據(jù)實(shí)驗(yàn)要求進(jìn)行代碼的編寫4、進(jìn)行代碼的調(diào)試實(shí)驗(yàn)代碼如下:#include<iostream.h>#include<stdio.h>constintMaxLen=100;設(shè)定圖最多包含100個(gè)頂點(diǎn)intDataMaxLen;裝載數(shù)據(jù)序列intDnum;表示數(shù)據(jù)序列實(shí)際長度inticount;查找次數(shù)/-Search_Bin代碼編寫intSearch_Bin
4、(intST,intlength,intkey)intlow,mid,high;/low,high,mid分別用來存放待查元素的上界,下界和中間位置low=0;首先low從數(shù)組ST口的第0號(hào)開始high=length-1;/high從數(shù)組ST口的最后一位開始while(low<=high)/循環(huán)直至low小于或等于highicount+;/查找次數(shù)加一mid=(low+high)/2;/取mid的值if(STmid=key)returnmid;若定值key等于STmid則返回待查元素所在位置elseif(key<STmid)high=mid-1;/不然又若定值key小于STmid則
5、讓high指向mid的前面一位elselow=mid+1;再不然則讓low指向mid的后面一位return-1;查找不成功返回-1/Search_Bin/*主函數(shù)*/intmain()inti,skey;輸入數(shù)據(jù)printf("請(qǐng)輸入數(shù)組長度(不小于5):");scanf("%d",&Dnum);printf("請(qǐng)按照從小到大的順序輸入數(shù)據(jù)序列:n");for(i=0;i<Dnum;i+)scanf("%d",&Datai);printf("請(qǐng)輸入要查找的數(shù)據(jù):");sca
6、nf("%d",&skey);調(diào)用函數(shù)Search_Bin,并將函數(shù)返回結(jié)果放在i中i=Search_Bin(Data,Dnum,skey);printf("n");if(i=-1)若Search_Bin返回值為-1則顯示查找失敗printf("查找失??!n");else/不然則執(zhí)行下面語句printf("查找成功!n");printf("查找的數(shù)據(jù)位置在(d)n",i);printf("查找次數(shù)(%d)",icount);printf("n");
7、return0;四、實(shí)驗(yàn)結(jié)論:實(shí)結(jié)果圖:情況一、能夠在待查數(shù)組中查找到待查元素continue"CUinistrmtor'DesIdQpT卓面還原數(shù)據(jù)結(jié)相曲聆五IoI回情況二、不能夠在待查數(shù)組中查找到待查元素*C:UsersAdministratorDesktopMX15層鏤Z握結(jié)構(gòu)實(shí)迨五口回度大"的長到S找免小5查數(shù)H44要7SIYJ-kt型輸33好7據(jù)l的7數(shù)一敗數(shù)an一失次£一要BS-屋屋rtrr-GUsersAdministratorDesktopM面還原播唱結(jié)構(gòu)'實(shí)驗(yàn)五一3'再數(shù)據(jù)分析基于上面程序運(yùn)行圖可以很明顯得知整個(gè)算法的實(shí)現(xiàn)過程,針對(duì)第一個(gè)圖:1、首先建立一個(gè)數(shù)組存放待查元素2、針對(duì)定值key進(jìn)行折半查找,第一個(gè)圖可以得到key=113、mid=(low+high)/2=(0+5)/2=2.得到的是ST2=33,查找了一次4、判斷ST2=33大于key=11,即執(zhí)行high=mid-1=15、mid=(low+high)/2=(0+1)/2=0.得到的是ST0=11=key,查找成功,查找了兩次6、返回待查元素所在位置7、同理。若查找不成功則返回查找失敗五、實(shí)驗(yàn)體會(huì):本次實(shí)驗(yà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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園地貸款申請(qǐng)書范文
- DB37-T 4684-2023 海濱灘涂微塑料監(jiān)測技術(shù)規(guī)范
- 自主實(shí)習(xí)申請(qǐng)書格式
- 班級(jí)體育委員申請(qǐng)書
- 環(huán)境監(jiān)測技術(shù)在農(nóng)業(yè)可持續(xù)性中的作用
- 個(gè)人結(jié)算業(yè)務(wù)申請(qǐng)書
- 喪葬費(fèi)申請(qǐng)書范文
- 2024-2025學(xué)年高中歷史專題819世紀(jì)以來的文學(xué)藝術(shù)2碰撞與沖突練習(xí)含解析人民版必修3
- 2024-2025學(xué)年高中數(shù)學(xué)課時(shí)分層作業(yè)17常數(shù)與冪函數(shù)的導(dǎo)數(shù)導(dǎo)數(shù)公式表含解析新人教B版選修1-1
- 2024-2025學(xué)年高中地理第3章農(nóng)業(yè)地域的形成與發(fā)展第1節(jié)農(nóng)業(yè)的區(qū)位選擇鞏固練習(xí)新人教版必修2
- 電網(wǎng)工程設(shè)備材料信息參考價(jià)(2024年第四季度)
- 2025年江蘇農(nóng)牧科技職業(yè)學(xué)院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 數(shù)據(jù)中心運(yùn)維服務(wù)投標(biāo)方案(技術(shù)標(biāo))
- 瑞幸對(duì)賭協(xié)議
- 幼兒園一日活動(dòng)流程教師培訓(xùn)
- 2025江蘇連云港市贛榆城市建設(shè)發(fā)展集團(tuán)限公司招聘工作人員15人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 征信入校園教育課件
- 2025年全年日歷-含農(nóng)歷、國家法定假日-帶周數(shù)豎版
- 《電子商務(wù)系統(tǒng)分析與設(shè)計(jì)》課件-電子商務(wù)系統(tǒng)規(guī)劃
- 《東北大學(xué)宣傳》課件
- 2025年山東鐵投集團(tuán)招聘筆試參考題庫含答案解析
評(píng)論
0/150
提交評(píng)論