資源描述:
《數(shù)據(jù)結(jié)構(gòu)查找實驗報告》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、實驗題9.1設(shè)^一個程序exp9-l.cpp,輸出在順序表{3,6,2,10,1,8,5,7,4,9}中采用順序方法找關(guān)鍵字5的過程。程序如下://文件名:exp9-l.cpp#include#defineMAXL100〃定義表屮最多記錄個數(shù)typedefintKeyl^pe;typcdcfcharInfoTypc[10];typedefstruct//KcyTypc為關(guān)鍵字的數(shù)據(jù)類型〃其他數(shù)據(jù)〃順序表類型{KcyTypckey;InfoTypedata;}NodeType;typedefNodeTypeSeqList[MAXL];intSeqSea
2、rch(SeqListR,intn^KeyTypek)//順序查找算法inti=();while(i=n)return-1;else{printf(”%d”,R[i].key);returni;}}voidmain()SeqListR;intn=10,i;KeyTypek=5;inta[]={3,6,2,10,l,8,5,7,4,9};for(i=0;i3、vn;i++)printf(”%d”,R[i].key);printfC'");printf(M查找%d所比較的關(guān)鍵字:t”,k);if((i=SeqSearch(R,n,k))!=-1)printf(H元素%d的位置是%d”,k,i);elseprintf(”元素%d不在表中”,k);printf(””);截圖如2飛我的資科逐結(jié)構(gòu)隹搞結(jié)肉上機拒導?=36210185749查掾所M較的關(guān)鍵字:36210185忙素5的位置是6Pressanykeytocontinue實驗題9.2設(shè)計一個程序exp9-2.cpp,輸出在順序表{1,2,3,
4、4,5,6,7,8,9,10}中采用折半查找法查找關(guān)鍵字9的過程。程序如下://文件名:exp9-2.cpp#include#defineMAXL100〃定義表中最多記錄個數(shù)typedefintKeyType;typedefcharInfoType[10J;typedefstructKeyTypekey;InfoTypedata;//KeyType為關(guān)鍵字的數(shù)據(jù)類型〃其他數(shù)據(jù)}NodeType;typedefNodeTypeSeqList[MAXL];〃順序表類型intBinSearch(SeqListR,intn,KeyTypek)〃二分查找算法{
5、intlow=0,high=n-l,mid,count=0;while(low<=high){mid=(low+high)/2;printfC*笫%d次比較:在[%d,%d]中比較元素R[%d]:%dM,++countjow,high,mid,RfmidJ.key);if(R[mid].key==k)//查找成功返回returnmid;if(Rfmid].key>k)〃繼續(xù)在Rflow..mid-ll屮查找high=mid-1;elselow=mid+l;〃繼續(xù)在R[mid+l..high],44杳找}return-1;}voidmain(){SeqListR;K
6、eyTypek=9;inta[]={l,2,3,4,5,6,7,&9,10},i,n=10;for(i=0;i7、R[4J:5RL8]:9-二Ffx=Ffx=Ffx元元元si5:匚匚E]]]4-999n"""3女058□王———12鑒書萬匕匕匕立y話的次次藍a91239s鍵舊第暑es關(guān)查元pr實驗題9.3設(shè)計一個程序exp9-3.cpp,輸出在順序表{8,14,6,9,10,22,34,18,19,31,40,3&54,66,46,71,78,68,80,85,100,94,88,96,87}中采用分塊查找法查找(每塊的塊長為5,共5塊)關(guān)鍵字46的過程。程序如下://文件名:exp9-3.cpp#include#defineMAXL100#