算法分析及設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第1頁
算法分析及設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第2頁
算法分析及設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第3頁
算法分析及設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第4頁
算法分析及設(shè)計(jì)實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

排序問題求解實(shí)驗(yàn)日記實(shí)驗(yàn)題目:排序問題求解實(shí)驗(yàn)?zāi)康模?)以排序(分類)問題為例,把握分治法的大體設(shè)計(jì)謀略。2)熟練把握一樣插入排序算法的實(shí)現(xiàn);3)熟練把握快速排序算法的實(shí)現(xiàn);4)明白得常見的算法體會分析方式;生成實(shí)驗(yàn)數(shù)據(jù).要求:編寫一個(gè)函數(shù)datagenetare,生成2000個(gè)在區(qū)間[1,10000]上的隨機(jī)整數(shù),并將這些數(shù)輸出到外部文件中。這些數(shù)作為后面算法的實(shí)驗(yàn)數(shù)據(jù)。實(shí)現(xiàn)直接插入排序算法.實(shí)現(xiàn)快速排序算法.實(shí)驗(yàn)要緊步驟:#include<>#include<>#include<>#include<>#defineRANDMAX10000#defineMax1000

intI_Change_count=0; T);if(A_Length>1000)exit(0);原序列由人你想要比較的數(shù)的個(gè)數(shù),不算法是按照2的次方米計(jì)原序列275712503151641835431510902152471326927792554414R19221A71S4R11AS944m2心7g313451R114316403175263821025318415175291190113562270312930299554843399031914197278276405299141233132313377?156142533311897259561617654582763702819503123181896201@11588619105382779728817974831891QG23203522708G322732??GB250351497G224QB2222713013148695873696696751844717066308Q51889554062827037714678536113822161092254169721660712978218126971131E0549124006277181249824507141491382?212812954283862034215237310621480719116B3361827?215823211M2525215bVb7313ia(J2?2V115138644855IttltJk)1323024663741729142017280791829032692:128擊4企應(yīng)1Er里71位1-- |八坯丁閂丁小H3丁尸廠43319377902 1158189620102181225427572763291437773990 484348E553615406545854915544587363826405 6966702873137417807983368380861986239675 974899551025310538118971190112318123311249812E03 12978138131315013230132691356213822138291386414149 141971451914678148B7148691497615164152371524715401 15614156961610916176166071689416972170661752918027 1810018279182901835418415184471889519116195Q020172 2034220352212812158222187222272240022E272400624E07 24603250352525225333259562637926971270312708627fc37 27718277602779227797278272827028817291152930229E42 2991430114308053085831062313453151031E403175231891 32110322733231332692 .k口底 也民 插入推序:比較次數(shù)=224,并多利法數(shù)W國簡;107 == :========m函入排序后的序列:43319377902 115818962010218122542757E763291437773990 484348555361549654585491B544587363826405 696670287313741780798336H380861986239675 974899551025310538118971190112318123311249812503 12978138131315013230132691356213U22138Z913U6414141? 141V?1451V14678148W7I486甘14V7615164152371524715401 15614156961610916176166071689416972170661752918027 181001827918290183541841518447188951911G1950620172 203422S3522128121582221872222722400225272400624507 246032503525252253332595626379E6971270312708627637 277182776027792277972782728270E8817291152930229542 29914301143080530S583106231345315103164031752 -t31891 32110:壬a4止良白匕自;32273Sk由 3231332692幗入排序:比較次數(shù)=42日7,樂茅鑲一遍簫箍雜度小68

pr-0=18.000000,X=1.000000pro=15.000000,X=1.000000pro=10.000000,X=1.000000ppo=7.000000,x=0.571429ppo=&.909000,x=0.000Q0Qppo=5.090000,X=0.000000pr-o=3.909000,x=0.000Q0Qallprofit=47_000000Pr-essanykeytocontinuepr-o=6.000000J.x=l_000000pr-o=3.000000,x=l.000000pr-o=10.000000,x=i.000000pro=5.000000,x=l.000000pro=18.000000,x=l.000000pro=15.000000,x=0.800000pro=7.383830 .000000pr-0=18.000000,X=1.000000pro=15.000000,X=1.000000pro=10.000000,X=1.000000ppo=7.000000,x=0.571429ppo=&.909000,x=0.000Q0Qppo=5.090000,X=0.000000pr-o=3.909000,x=0.000Q0Qallprofit=47_000000Pr-essanykeytocontinuepr-o=6.000000J.x=l_000000pr-o=3.000000,x=l.000000pr-o=10.000000,x=i.000000pro=5.000000,x=l.000000pro=18.000000,x=l.000000pro=15.000000,x=0.800000pro=7.383830 .000000allppofit=54.000000Ppessanykeytocontinuepr-o=6.000000,x=l.000000pr-Q=19.000000,X=1.000000pro=18.000000,X=1.000000pro=15.000000,X=1.000000pro=3.000000,x=l.000000pr-o=5.000000,x=0.6&&&&7pr-Q=7.000000,x=0.030000allprofit=55.333332Pressanykeytocontinue,利用dijkstra貪婪法獲取由結(jié)點(diǎn)1到其余結(jié)點(diǎn)最短途徑長度,輸出保留到外部文件dijkstra-.然后改寫你的程序,求得所有各點(diǎn)之間的最短距離輸出保留到文件dijkstra.以上圖作為輸入,利用Floyd算法求得所有各點(diǎn)直接的最短距離;輸出保留到文件floyd-.實(shí)驗(yàn)要緊步驟:#include<>#include<>#include<>#defineM999voidmain(){intcost[6][6]={{M,M,15,M,M,M},{20,M,M,M,10,30},{M,4,M,M,M,10},{M,M,M,M,M,M},{M,M,M,15,M,M},{M,M,M,4,10,M}};typedefstructedge{intadjvex;ost=cost[0][i];djvex=0;ost&&!selected[i]){min=lowpathcost[i].cost;" <<"對應(yīng)的邊上的權(quán)值是"<<min<<endl;}selected[minvex]=1;ost>min+cost[minvex][i]&&min+cost[minvex][i]<M)ost=min+cost[minvex][i];lowpathcost[i].adjvex=minvex;}for(i=1;i<=5;i++)cout<<""<<lowpathcost[i].adjvex;cout<<endl<<endl;inteadjvex,sadjvex;charep[2];for(i=1;i<=total;i++){eadjvex=adjvex[i];sadjvex=lowpathcost[eadjvex].adjvex;ep[0]='0'+eadjvex;ep[1]='\0';chartmp[10];strcpy(tmp,path[sadjvex]);strcpy(path[eadjvex],strcat(tmp,ep));ost<<endl;}}實(shí)驗(yàn)結(jié)果:

次被選擇的頂點(diǎn).是:?次柢選擇的頂點(diǎn)是江次薇選澤的頂點(diǎn)是邙次橫選擇的頂點(diǎn)是:次;詵擇的頂豆曷:4

12路路路路路CD短短短短短。次被選擇的頂點(diǎn).是:?次柢選擇的頂點(diǎn)是江次薇選澤的頂點(diǎn)是邙次橫選擇的頂點(diǎn)是:次;詵擇的頂豆曷:4

12路路路路路CD短短短短短。日瞽瞽瞽瞽甑t-TT=.JTTJTThHVMJI」二—J二.二——u--1,---ek21534y點(diǎn)點(diǎn)點(diǎn)點(diǎn)點(diǎn)anmmllJKmm&es空空空空至L..2..2.2..2.ii府的邊應(yīng)的邊應(yīng)的邊應(yīng)的邊應(yīng)的妨是是是是是r'r.廠V.rh-.rh-.Fv.沙沙沙沙沙-悔臨幗悒悔點(diǎn)點(diǎn)點(diǎn)點(diǎn)點(diǎn).勺?勺勺?勺?1,----1,-----D-lIU---1,----歷歷J71歷歷-5959911222是是是是是■I二士三-士三-七三一±三02長度是:15021長度是:19025長度是:250253長度是:2弓0214長度是:29心得體會:通過本次實(shí)驗(yàn),了解了動態(tài)計(jì)劃的大體設(shè)計(jì)謀略。把握了dijkstra貪婪法求解最短途徑問題的方式,并能夠自己編寫程序運(yùn)行出結(jié)果,這讓自己很有成績感。通過改寫dijkstra算法,使之成為Floyd算法求解最短途徑問題的方式。通過對照這兩個(gè)算法的實(shí)現(xiàn)進(jìn)程,更好地了解這兩個(gè)算法的本質(zhì)區(qū)別。N-皇后問題求解實(shí)驗(yàn)日記實(shí)驗(yàn)題目:N-皇后問題求解實(shí)驗(yàn)?zāi)康模?)以Q-皇后問題為例,把握回溯法的大體設(shè)計(jì)謀略。2)把握回溯法解決Q-皇后問題的算法并實(shí)現(xiàn);3)分析實(shí)驗(yàn)結(jié)果。.用回溯法求解N-Queen,參考教材算法思想,并實(shí)現(xiàn)你的算法。要求:用鍵盤輸入N;輸出現(xiàn)在解的個(gè)數(shù),并統(tǒng)計(jì)運(yùn)算時(shí)刻。.給出N=4,5,6時(shí),N-Queen解的個(gè)數(shù)。.嘗試增大N,觀看運(yùn)行情形;并明白得該算法的時(shí)刻復(fù)雜度。實(shí)驗(yàn)要緊步驟:#include<>#include<>intX[10];boolPLACE(intk){inti=1;while(i<k){if(X[i]==X[k]||abs(X[i]-X[k])==abs(i-k))returnfalse;i=i+1;}returntrue;}voidmain(){intk=1,n;intcount=0;printf("請輸入一個(gè)正整數(shù):\n");scanf("%d",&n);while(k>0)//對所有行執(zhí)行以下語句{X[k]=X[k]+1;//移到下一列while(X[k]<=n&&!PLACE(k)){X[k]=X[k]+1;//移到下一列,再判定}if(X[k]<=n)//找到一個(gè)位置{if(k==n)//一個(gè)完整的解{//printprintf("thesoutionis:\n");for(intt=1;t<=n;t++)printf("%3d",X[t]);printf("\n");count+=1;}else{k=k+1;X[k]=0;}//轉(zhuǎn)向下一行elsek=k-1;//回溯}printf("\nthenumberofthesolutionsis%d\n",count);}實(shí)驗(yàn)結(jié)果:N=4時(shí),解的情形為:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論