版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
學(xué)院名稱
專業(yè)班級
學(xué)號
實(shí)驗(yàn)題目
學(xué)生姓名
課程名稱
數(shù)據(jù)結(jié)構(gòu)
4查找
一、實(shí)驗(yàn)?zāi)康呐c要求
通過本次實(shí)驗(yàn),掌握查找表上的有關(guān)查找方法,并分析時(shí)間復(fù)雜度。
二、主要儀器設(shè)備
Cfree
三、實(shí)驗(yàn)內(nèi)容和原理
[問題描述]
[存儲(chǔ)結(jié)構(gòu)]
[算法的基本思想]
精品文檔
[參考源程序]
KeyTypekey;
}ElemType;//元素類型
typedefstructBiTNode{
ElemTypedata;
elseif(key<bt->data.key)returnsearchBST(bt->lchild,key);
elsereturnsearchBST(bt->rchild,key);
}
voidinsertBST(BiTree*bt,BiTrees){
/*在二叉排序樹中插入一個(gè)新結(jié)點(diǎn),即依次插入輸入的數(shù)*/
if(*bt==NULL)*bt=s;
elseif(s->data.key<(*bt)->data.key)insertBST(&((*bt)->lchild),s);
elseif(s->data.key>(*bt)->data.key)insertBST(&((*bt)->rchild),s);
}
精品文檔
KeyTypekey;
scanf("%d",&key);
bt=NULL;
while(key!=-1){
scanf("%d",&key);
}//while
/*二叉排序樹的查找,可多次查找,并輸出查找的結(jié)果*/
do{
s=searchBST(bt,key);
if(s!=NULL)printf("\n成功!這個(gè)等價(jià)元素是%d.\n",s->data.key);
else
printf("\n沒有找到!\n");
printf("\n是否繼續(xù)?(y/n):");
scanf("%c",&ch);
ch=getchar();
}
}//main
實(shí)驗(yàn)結(jié)果:
精品文檔
精品文檔
學(xué)院名稱計(jì)算機(jī)科學(xué)與技術(shù)
實(shí)驗(yàn)成績
實(shí)驗(yàn)日期
5內(nèi)排序
學(xué)生姓名
課程名稱
鄭海兵
1月2日
數(shù)據(jù)結(jié)構(gòu)
實(shí)驗(yàn)題目
通過本次實(shí)驗(yàn),掌握線性表的排序方法,并分析時(shí)間復(fù)雜度。
二、主要儀器設(shè)備
Cfree
三、實(shí)驗(yàn)內(nèi)容和原理
[問題描述]
設(shè)計(jì)一個(gè)用鏈表表示的直接選擇排序算法,并用程序?qū)崿F(xiàn)。
[輸入]
n個(gè)數(shù)據(jù)。
[輸出]
n個(gè)數(shù)據(jù)由小到大排列的結(jié)果。
[存儲(chǔ)結(jié)構(gòu)]
精品文檔
structNumber{
intdata;
structNumber*next;
};
structNumber*Creat_H(intk){//創(chuàng)建單鏈表
structNumber*L;
structNumber*p;
p=(structNumber*)malloc(sizeof(structNumber));
L=p;
inttemp;
inti;
printf("\n請輸入元素:");
for(i=1;i<=k;i++){
scanf("%d",&temp);
p->data=temp;
if(i==k){
p->next=NULL;
break;
}
p->next=(structNumber*)malloc(sizeof(structNumber));
p=p->next;
}//for
returnL;
精品文檔
structNumber*min;
do{
if(flag==0){//第一次找最小數(shù)時(shí)的初始化
temp=min=max=r;
}
else{
temp=min=max=r->next;
}//do
while(1){//找出最小數(shù)
if(min->data<=max->next->data){
if(max->next->next!=NULL){
max=max->next;
}
else{
break;
}
}//if
else{
temp=max;//相當(dāng)于temp->next=min
min=max->next;
if(max->next->next!=NULL){
max=max->next;
}
精品文檔
}//else
}
else{
temp->next=min->next;
}
if(flag==0){
r=min;
r->next=p;
p=r;
}
else{
min->next=r->next;
r->next=min;
r=min;
}
}//if
else{//初始化時(shí)min就已經(jīng)指向了最小數(shù)
if(flag==0){//第一次找到最小數(shù)
精品文檔
flag++;//又排好一個(gè)數(shù)
if(flag==n-1){
returnp;
}
}while(1);
}
intmain(){
structNumber*H;
printf("\n請輸入元素個(gè)數(shù)n(n>=2):");//輸入數(shù)據(jù)(不得少于2個(gè))
scanf("%d",&n);
while(n<2){
}
H=Creat_H(n);
H=Sort(H);
printf("\n排序后的數(shù)為:");//數(shù)據(jù)排序后的序列
while(H!=NULL){
精品文檔
}
system("pause");
}
五、實(shí)驗(yàn)結(jié)果與分析
習(xí)題1:這題要從前面和后面同時(shí)進(jìn)行處理,只有這樣才能保證時(shí)間復(fù)雜度為O(N)。
精品文檔
六、實(shí)驗(yàn)心得及體會(huì)
排序有很多種方法,如冒泡排序、直接插入排序、希爾
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年庫房轉(zhuǎn)租合同轉(zhuǎn)租條件、轉(zhuǎn)租手續(xù)及租金處理分析
- 2024年企業(yè)內(nèi)部審計(jì)保密協(xié)議
- 2024年度企業(yè)社會(huì)責(zé)任報(bào)告合同
- 2024年度住宅小區(qū)木門安裝工程合同
- 2024年度許可使用合同(商標(biāo))
- 腰椎ct課件教學(xué)課件
- 2024北京技術(shù)合同
- 2024年大數(shù)據(jù)使用協(xié)議:數(shù)據(jù)收集、分析和應(yīng)用的具體規(guī)定
- 液體密度課件教學(xué)課件
- 輿論學(xué)課件教學(xué)
- 2024-2025學(xué)年二年級上學(xué)期數(shù)學(xué)期中模擬試卷(蘇教版)(含答案解析)
- 入團(tuán)志愿書(2016版本)(可編輯打印標(biāo)準(zhǔn)A4) (1)
- 浙江省公路山嶺隧道機(jī)械化裝備應(yīng)用指導(dǎo)手冊
- (完整word版)拼音練習(xí)jqx和ü、üe的相拼
- 醫(yī)療質(zhì)量檢查分析、總結(jié)、反饋5篇
- 桅桿工藝技術(shù)及施工要求
- (完整版)六年級下冊體育教學(xué)計(jì)劃與教案
- 北京地鐵受電弓的維護(hù)與故障檢修-畢業(yè)設(shè)計(jì)說明書
- 幼兒園教育和家庭教育的有效結(jié)合研究
- 集團(tuán)公司兩金管理評價(jià)辦法
- 電影的聲音分析PPT課件
評論
0/150
提交評論