版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、算法:是是若干條條指令組組成的有有窮序列列算法的三三個(gè)要素素1)數(shù)據(jù)據(jù): 運(yùn)運(yùn)算序列列中作為為運(yùn)算對(duì)對(duì)象和結(jié)結(jié)果的數(shù)數(shù)據(jù).2)運(yùn)算算: 運(yùn)運(yùn)算序列列中的各各種運(yùn)算算:賦值值,算術(shù)術(shù)和邏輯輯運(yùn)算 3)控制制和轉(zhuǎn)移移: 運(yùn)運(yùn)算序列列中的控控制和轉(zhuǎn)轉(zhuǎn)移. 四條性質(zhì)質(zhì):輸入入、輸出出、確定定性、有有窮性四條性質(zhì)質(zhì):1)輸入入:有零零個(gè)或多多個(gè)由外外部提供供的量作作為算法法的輸入入2)輸出出:算法法產(chǎn)生至至少一個(gè)個(gè)量作為為輸出3)確定定性:組組成算法法的每條條指令是是清晰的的,無(wú)歧歧義的。4)有限限性:算算法中每每條指令令的執(zhí)行行次數(shù)是是有限的的,執(zhí)行行每條指指令的時(shí)時(shí)間也是是有限的的。程序:是是算法用
2、用某種程程序設(shè)計(jì)計(jì)語(yǔ)言的的具體實(shí)實(shí)現(xiàn)算法的復(fù)復(fù)雜性:算法運(yùn)運(yùn)行所需需要的計(jì)計(jì)算機(jī)資資源的量量時(shí)間復(fù)雜雜性(算算法運(yùn)行行所需要要的計(jì)算算機(jī)時(shí)間間資源的的量)空間復(fù)雜雜性(算算法運(yùn)行行所需空空間資源源的量)時(shí)間復(fù)雜雜性的三三種情況況:最壞壞情況(可操作作性最好好且最優(yōu)優(yōu)實(shí)際價(jià)價(jià)值)、最好情情況、平平均情況況分治法的的設(shè)計(jì)思思想:將將一個(gè)難難以直接接解決的的大問(wèn)題題,分割割成一些些規(guī)模較較小的相相同問(wèn)題題,以便便各個(gè)擊擊破,分分而治之之。遞歸:直直接或間間接地調(diào)調(diào)用自身身的算法法。遞歸歸函數(shù):用函數(shù)數(shù)自身給給出定義義的函數(shù)數(shù)。階乘函數(shù)數(shù)可遞歸歸定義為為:遞歸定義義式:int facctorriall
3、(innt nn)if (n = 00) rretuurn 1;retuurn n * faactooriaal(nn-1);Fiboonaccci數(shù)數(shù)列:無(wú)無(wú)窮數(shù)列列1,11,2,3,55,8,13,21,34,5,可遞遞歸定義義為遞歸定義義式:int fibbonaaccii(intt n)if (n = 11) reeturrn 11;retuurnffiboonaccci(n-11)+ffiboonaccci(n-22);Hanooi塔定定義式:voiddhannoi(intt n, innt aa, iint b, intt c)if (n 0)hanooi (n - 1, a, c
4、, b);movee (aa, bb);hanooi (n - 1, c, b, a);二分搜索索算法的的基本思思想:是是將n個(gè)個(gè)過(guò)元素素分成大大致相同同的兩半半,取aan/2與與x作比比較。合并排序序:用分分治法策策略實(shí)現(xiàn)現(xiàn)對(duì)n個(gè)個(gè)元素進(jìn)進(jìn)行排序序的算法法?;颈舅枷胧鞘牵簩⒋判蛟胤殖沙纱笮〈蟠笾孪嗤膬蓚€(gè)個(gè)子集,分別對(duì)對(duì)兩個(gè)子子集合進(jìn)進(jìn)行排序序,最終終將排好好序的子子集合并并成所要要求的排排好序的的集合。動(dòng)態(tài)規(guī)劃劃算法基基本思想想(自底底向上、全局最最優(yōu)):講帶帶求解的的問(wèn)題分分解成若若干個(gè)子子問(wèn)題,先求解解子問(wèn)題題,然后后從這些些子問(wèn)題題的解得得到原問(wèn)問(wèn)題的解解。與分治法法不同
5、的的是:適適用于動(dòng)動(dòng)態(tài)規(guī)劃劃法求解解的問(wèn)題題,經(jīng)分分解得到到的子問(wèn)問(wèn)題往往往不是互互相獨(dú)立立的。最優(yōu)子結(jié)結(jié)構(gòu)性質(zhì)質(zhì)(問(wèn)題題的最優(yōu)優(yōu)解包含含了其子子問(wèn)題的的最優(yōu)解解)子問(wèn)題重重疊性質(zhì)質(zhì)(在用用遞歸算算法自頂頂向下求求解此問(wèn)問(wèn)題時(shí),每次產(chǎn)產(chǎn)生的子子問(wèn)題并并不總是是新問(wèn)題題,有些些子問(wèn)題題被反復(fù)復(fù)計(jì)算多多次)備忘錄方方法(動(dòng)態(tài)規(guī)規(guī)劃算法法變形):用表表格保存存已解決決的子問(wèn)問(wèn)題的答答案,在在下次需需要解此此子問(wèn)題題時(shí),只只要簡(jiǎn)單單地查看看該子問(wèn)問(wèn)題的解解答,而而不必重重新計(jì)算算。最優(yōu)二叉叉搜索樹樹性質(zhì):存儲(chǔ)于于每個(gè)結(jié)結(jié)點(diǎn)中的的元素xx大于其其左子樹樹中任一一結(jié)點(diǎn)所所存儲(chǔ)的的元素,小于其其右子樹樹中任
6、一一結(jié)點(diǎn)所所存儲(chǔ)的的元素。貪心算法法(自頂頂向下、局部最最優(yōu)):通過(guò)過(guò)一系列列的選擇擇來(lái)得到到問(wèn)題的的解。它它所做的的每一個(gè)個(gè)選擇都都是當(dāng)前前狀態(tài)下下局部最最好選擇擇。貪心選擇擇性質(zhì)(所求問(wèn)問(wèn)題的整整體最優(yōu)優(yōu)解可以以通過(guò)一一系列局局部最優(yōu)優(yōu)的選擇擇來(lái)達(dá)到到,是貪貪心算法法與動(dòng)態(tài)態(tài)規(guī)劃算算法的主主要區(qū)別別)最有子結(jié)結(jié)構(gòu)性質(zhì)質(zhì)(一個(gè)個(gè)問(wèn)題的的最優(yōu)解解包含其其子問(wèn)題題的最優(yōu)優(yōu)解)哈夫曼編編碼:是是廣泛用用于數(shù)據(jù)據(jù)文件壓壓縮的十十分有效效的編碼碼方法。最短路徑徑:給定定一個(gè),其中每每條邊的的權(quán)是非非負(fù)實(shí)數(shù)數(shù)。一個(gè)帶權(quán)有向圖11111100601030105020最小生成成樹性質(zhì)質(zhì):用貪貪心算法法設(shè)計(jì)策
7、策略可以以設(shè)計(jì)出出構(gòu)造最最小生成成樹的有有效算法法?;厮莘ǎと伺琅郎?、迷迷宮問(wèn)題題、n后后問(wèn)題):在解解問(wèn)題的的解空間間樹中,按深度度優(yōu)先策策略,從從根節(jié)點(diǎn)點(diǎn)出發(fā)搜搜索解空空間樹?;舅枷胂耄簭拈_開始結(jié)點(diǎn)點(diǎn)(根節(jié)節(jié)點(diǎn))出出發(fā),以以深度有有限方式式搜索整整個(gè)解空空間。分枝限界界法基本本思想:以廣度度優(yōu)先或或以最小小耗費(fèi)(最大效效益)優(yōu)優(yōu)先的方方式搜索索問(wèn)題的的解空間間樹。分枝限界界法求解解目標(biāo)是是找出滿滿足約束束條件的的一個(gè)解解,或是是滿足約約束條件件的解中中找出使使某一目目標(biāo)函數(shù)數(shù)值達(dá)到到極大或或極小的的解,即即在某種種意義下下的最優(yōu)優(yōu)解?;厮莘ㄇ笄蠼饽繕?biāo)標(biāo)是找出出解空間間中滿足足約束條條件
8、的所所有解。批處理作作業(yè)調(diào)度度:給定定n個(gè)作作業(yè)的集集合J = (J1,J2,Jnn)。每每個(gè)作業(yè)業(yè)Ji都都有兩項(xiàng)項(xiàng)任務(wù)分分別在兩兩臺(tái)機(jī)器器上完成成。每個(gè)個(gè)作業(yè)必必須先由由機(jī)器11處理,然后再再由機(jī)器器2處理理。分支限界界法與回回溯法:分支限限界法與與回溯法法的求解解目標(biāo)不不同,回回溯法的的求解目目標(biāo)是找找出求解解空間中中滿足約約束條件件的所有有解,而而分支限限界法求求解的目目標(biāo)則是是找出滿滿足約束束條件的的一個(gè)解解?;厮菟莘ㄒ陨钌疃葍?yōu)先先的方式式搜索解解空間,而分支支限界法法則以廣廣度優(yōu)先先或最小小耗費(fèi)優(yōu)優(yōu)先的方方式搜索索空間。隨機(jī)化算算法基本本特征:對(duì)所求求解問(wèn)題題的同一一實(shí)例用用同一隨隨
9、機(jī)化算算法求解解兩次可可能得到到完全不不同的效效果。隨機(jī)數(shù)在在隨機(jī)化化算法設(shè)設(shè)計(jì)中扮扮演著十十分重要要的角色色。符號(hào)三角角問(wèn)題:#inccludde #deffinee M 13#deffinee N 13Triaanglle(ccharr AMN)innt ii,j; priintff(n 輸輸入第11行的數(shù)數(shù)據(jù):);for (j=0;jjN;j+)/ 輸入第第1行的的數(shù)據(jù)sccanff(%c,&A0j);for (i=1;iiM;i+)/ A數(shù)組組的第22行以下下清空f(shuō)or (j=0;jjN;j+)AAij= ; i=00;j=0;whille(iiM-1)wwhille(jjN-1)if
10、 (Aiijj=Aiijj+2) / 如如果上一一行的相相鄰兩符符號(hào)相同同Aii+1j+1=+;/ 則下一一行的符符號(hào)為+elseeAii+1j+1=-;/ 否則下下一行的的符號(hào)為為-jj=j+2;i+;jj=i;voidd maain()innt ii,j;charr AMN;Triianggle(A);for (i=0;iiM/2+11;i+)ffor (j=0;jjN-i;jj+)pprinntf(%44c,Aiijj);prrinttf(nn);矩陣相相乘:/ 兩兩矩陣相相乘#inccludde #deffinee M 2#deffinee N 3MatrrixMMulttiplly(
11、iint AMMNN,iint BNNMM,iint CMMMM)innt ii,j,k,ssum;for (i=0;iiM;i+)for (j=0;jjM;j+) suum=00;for (k=0;kkN;k+)summ=suum+AAik*Bkj;CCij=suum;voidd maain()innt AAMN,BNM,CMMMM,ii,j,k;for (i=0;iiM;i+)/ 輸入入6個(gè)整數(shù)數(shù)給矩陣陣Afor (j=0;jjN;j+)sscannf(%d,&AAij);for (i=0;iiN;i+)/ 輸入入6個(gè)整數(shù)數(shù)給矩陣陣Bfor (j=0;jjM;j+)sscannf(%d,&
12、BBij);MattrixxMulltipply(A, B, C);priintff(n 兩兩矩陣相相乘的的的結(jié)果如如下:nnn);for (i=0;iiM;i+)ffor (j=0;jjM;j+)pprinntf(%44d,Ciijj);prrinttf(nn);二分搜索索算法:是用分分支策略略的典型型例子,需要先先排序。# inncluude # deefinne MMAXLLEN 11typeedeff sttrucctinnt kkey;typpe_eelemmentt;int binnaryy_seearcch(ttypee_ellemeent r,innt kkey)innt ll
13、eftt=1,rigght=MAXXLENN,miiddlle;whille (lefftkkey)rrighht=mmidddle-1;/ 在在右半部部繼續(xù)查查找elseelleftt=miiddlle+11;/ 在右右半部繼繼續(xù)查找找retuurn -1;voidd maain()innt ii,j,keyy;typpe_eelemmentt teemp,rMMAXLLEN+1=0,9,113,115,330,337,555,660,775,880,990,992;for (i=1;iiMAAXLEEN;ii+)/ 對(duì)數(shù)組組進(jìn)行排排序for (j=i+11;jrjj.kkey)temmp=
14、rri;rii=rrj;rjj=ttempp;for (i=1;ii=MMAXLLEN;i+)prrinttf(%3dd,rri.keey);priintff(nnn 輸入入欲查找找的數(shù)據(jù)據(jù):);scaanf(%dd,&keyy);i=bbinaary_seaarchh(r,keyy);if (i=-1)prrinttf(n 已經(jīng)查查找完,尚未找找到該數(shù)數(shù)!nnn);elseeprrinttf(nn 已已找到,其序號(hào)號(hào)是:%d nnn,ii);快速排排序:#inccludde #inccludde #deffinee MAAXLEEN 110int parrtittionn(innt rr,i
15、ntt s,intt t)innt ii,j,rp;i=ss;j=tt;/一一趟快速速排序,將基準(zhǔn)準(zhǔn)記錄移移到正確確位置rp=rss;/基基準(zhǔn)記錄錄暫存 rp 中whille(iij)/從從序列的的兩端交交替向中中間掃描描wwhille(ii=rp)/掃掃描比基基準(zhǔn)記錄錄小的位位置jj-;ri=rjj;/將將比基準(zhǔn)準(zhǔn)記錄小小的數(shù)據(jù)據(jù)移到低低端whille(iij & rii=rp)/掃掃描比基基準(zhǔn)記錄錄大的位位置ii+;rj=rii;/將將比基準(zhǔn)準(zhǔn)記錄大大的數(shù)據(jù)據(jù)移到高高端rii=rrp;/基基準(zhǔn)記錄錄到位retuurn i;voidd QuuickkSorrt(iint r,innt ss,
16、innt tt)/快快速排序序遞歸算算法innt kk;if (stt)/長(zhǎng)長(zhǎng)度達(dá)于于1kk=paartiitioon(rr,s,t);/調(diào)調(diào)用一趟趟快速排排序算法法將rs.rt一一分為二二QuuickkSorrt(rr,s,k-11);/對(duì)對(duì)低端子子序列遞遞歸排序序,k是是支點(diǎn)位位置QuuickkSorrt(rr,k+1,tt);/對(duì)對(duì)高端子子序列遞遞歸排序序voidd maain()innt ii;int rMMAXLLEN;priintff(n 請(qǐng)請(qǐng)輸入%d個(gè)整整數(shù):,MAAXLEEN);for (i=0;iiMAAXLEEN;ii+)sccanff(%d,&ri);QuiickSSor
17、tt(r,0,MMAXLLEN-1);priintff(n 快快速排序序的結(jié)果果如下:nn);for(i=00;iMAXXLENN;i+)prrinttf(%3dd,rri);priintff(nnn);循環(huán)賽日日程表:#inccludde #deffinee MAAXLEEN 88 voidd maain()innt ii,j;int xMMAXLLEN+1MAXXLENN+1=00;/ 數(shù)組清清零for (i=1;ii=MMAXLLEN;i+) / 產(chǎn)產(chǎn)生第11列數(shù)據(jù)據(jù)xi1=i;for (i=1;ii=MMAXLLEN;i+) / 產(chǎn)產(chǎn)生第22列數(shù)據(jù)據(jù)if (i % 2 !=00)xxi
18、2=xi+1111; / 產(chǎn)產(chǎn)生奇數(shù)數(shù)行的第第2列的的數(shù)據(jù)elseexxi2=xi-1111; / 產(chǎn)產(chǎn)生偶數(shù)數(shù)行的第第2列的的數(shù)據(jù)for(i=11;i=8;i+) / 產(chǎn)產(chǎn)生左半半部表中中的右半半部分for (j=1;jj=22;j+)if (i=1 | ii=22 | i=5 | i=6)xii+2j+2=xiijj;elseexii-2j+2=xiijj;for(i=11;i=8;i+)/ 產(chǎn)生生右半部部表的數(shù)數(shù)據(jù)for (j=1;jj=44;j+) if (i=4)xii+4j+4=xiijj;elseexii-4j+4=xiijj;priintff(n 循循環(huán)賽日日程表如如下:nnn
19、);for (i=1;ii=MMAXLLEN;i+) / 輸出該該表ffor (j=1;jj=MMAXLLEN;j+)pprinntf(%66d,xiijj);prrinttf(nn);最大公約約數(shù):int gcdd(innt mm,innt nn) int r;whille(nn!=00) r = mm % n;m = nn;n = rr;retuurn m; 最小公倍倍數(shù):int gcmm(innt mm,innt nn)innt ii,k,f;if (mnn) / 交交換m與與nii=m;m=n;n=i;f=11; if (m%nn=00)ff=f*m;retuurn f;i=22;k=
20、(intt)(ssqrtt(n);/ 求求n的平平方根取取整數(shù)whille(ii=kk) iif (m%i=0)&(nn%i=0)f=ff*i; mm=m/i;nn=n/i;ii=2;elsee ii+;f=ff*m*n;retuurn f; 冒泡排序序:/ 交換排排序中的的冒泡排排序法# inncluude # deefinne LLENGGTH 10voidd maain() iint i,jj,k,temmp;int rLLENGGTH;for (i=0;iiLEENGTTH;ii+)sccanff(%d,&ri);/輸入110個(gè)整整數(shù)for (i=1;ii=LLENGGTH-1;ii+
21、)/共共進(jìn)行 LENNGTHH-1 趟排序序kk=0;for (j=0;jjrrj+1)/若若相鄰兩兩記錄的的關(guān)鍵字字逆序, k+; / 則則互相交交換 temmp=rrj; rjj=rrj+1; rjj+1=teemp; if (k=0)/ 說(shuō)明該該趟沒(méi)有有發(fā)生交交換breaak; / 跳出該該層循環(huán)環(huán)for(i=00;iLENNGTHH;i+)prrinttf(%3dd,rri); / 輸出排排序結(jié)果果素?cái)?shù)判斷斷:int nummberr; / nnumbber 為全局局變量booll prrimee(innt xx)innt ii,k;k=ssqrtt(x);for (i=2;ii=kk
22、;i+) / 如果果X能被被 2 - ssqrtt(x) 中的的任何一一個(gè)整數(shù)數(shù)整除,if (x%ii=00)/則X不不是素?cái)?shù)數(shù),因此此應(yīng)跳出出該層循循環(huán)retuurn fallse;retrrun truue;/ 表示示X未被被 2 - ssqrtt(x) 中的的任何一一個(gè)整數(shù)數(shù)整除素?cái)?shù)因子子分解:#inccludde #inccludde #deffinee N 1000voidd maain()innt ii,j,k,xx,y,sieeve_ANN+1,siievee_BN+11,ssievve_CCN+1;scaanf(%dd,&x);/ 輸入一一個(gè)1000以內(nèi)內(nèi)的非負(fù)負(fù)整數(shù)y=xx; if(xx0)retturnn;/輸入入整數(shù)是是負(fù)數(shù)for(i=22;i=x;i+)/ 設(shè)置ssievve_AA篩中數(shù)數(shù)據(jù) 22 Xsiievee_Ai=i;k=(intt)sqqrt(x);for(i=22;i=k;i+)jj=i*i;whille(jj=xx)if (sieeve_Ajj!=0)/定位 i 的的倍數(shù)處處sieeve_Ajj=00;/篩
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程部年終總結(jié)報(bào)告
- 二零二五年度合資成立人工智能技術(shù)研發(fā)合作協(xié)議3篇
- 第一次月考測(cè)評(píng)卷Lesson1 ~ lesson3-2024-2025學(xué)年科普版(三起)英語(yǔ)四年級(jí)上冊(cè)含答案
- 貴州師范大學(xué)《播音創(chuàng)作基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- Unit 1 How can I get there?(說(shuō)課稿)-2024-2025學(xué)年人教PEP版英語(yǔ)六年級(jí)上冊(cè)
- 貴州黔南經(jīng)濟(jì)學(xué)院《動(dòng)畫表演》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年度建筑工程債權(quán)轉(zhuǎn)讓與安全文明施工協(xié)議3篇
- DB32-T 1264-2024 天目湖白茶質(zhì)量分級(jí)
- 貴州理工學(xué)院《模擬電子學(xué)基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴州農(nóng)業(yè)職業(yè)學(xué)院《電路理論》2023-2024學(xué)年第一學(xué)期期末試卷
- 《人力資源情緒管理問(wèn)題研究開題報(bào)告(含提綱)》
- 哮喘吸入裝置的正確使用方法課件
- 2023年成都東部集團(tuán)有限公司招聘筆試題庫(kù)及答案解析
- 角點(diǎn)網(wǎng)格一.角點(diǎn)網(wǎng)格定義
- 聚酯合成反應(yīng)動(dòng)力學(xué)
- 自動(dòng)控制原理全套課件
- 視頻監(jiān)控室值班記錄表
- 歌曲《梁?!泛?jiǎn)譜完整版
- 小學(xué)語(yǔ)文教研組期末考試質(zhì)量分析
- 校園安全存在問(wèn)題及對(duì)策
- 鉆井作業(yè)常見安全隱患
評(píng)論
0/150
提交評(píng)論