![貪心算法求解最優(yōu)服務(wù)次序問題_第1頁](http://file4.renrendoc.com/view/1024785cfcbc7a99693f2bc9a798018f/1024785cfcbc7a99693f2bc9a798018f1.gif)
![貪心算法求解最優(yōu)服務(wù)次序問題_第2頁](http://file4.renrendoc.com/view/1024785cfcbc7a99693f2bc9a798018f/1024785cfcbc7a99693f2bc9a798018f2.gif)
![貪心算法求解最優(yōu)服務(wù)次序問題_第3頁](http://file4.renrendoc.com/view/1024785cfcbc7a99693f2bc9a798018f/1024785cfcbc7a99693f2bc9a798018f3.gif)
![貪心算法求解最優(yōu)服務(wù)次序問題_第4頁](http://file4.renrendoc.com/view/1024785cfcbc7a99693f2bc9a798018f/1024785cfcbc7a99693f2bc9a798018f4.gif)
![貪心算法求解最優(yōu)服務(wù)次序問題_第5頁](http://file4.renrendoc.com/view/1024785cfcbc7a99693f2bc9a798018f/1024785cfcbc7a99693f2bc9a798018f5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
實(shí)驗(yàn)名稱:貪心算法實(shí)例編程求解最優(yōu)服務(wù)次序問題1、實(shí)驗(yàn)?zāi)康模?)理解貪心算法的概念2)掌握貪心算法的基本要素3)掌握設(shè)計(jì)貪心算法的一般步驟4)針對具體問題,能應(yīng)用貪心算法設(shè)計(jì)有效算法5)用C++實(shí)現(xiàn)算法,并且分析算法的效率2、實(shí)驗(yàn)設(shè)備及材料:硬件設(shè)備:PC機(jī)機(jī)器配置:雙核cpu頻率2.2GHz,內(nèi)存2G操作系統(tǒng):Windows7開發(fā)工具:VC++6.03、實(shí)驗(yàn)內(nèi)容:①問題描述設(shè)有n個(gè)顧客同時(shí)等待一項(xiàng)服務(wù)。顧客i需要的服務(wù)時(shí)間為ti,l<i<no應(yīng)如何安排n個(gè)顧客的服務(wù)次序才能使平均等待時(shí)間達(dá)到最?。科骄却龝r(shí)間是n惡搞顧客等待服務(wù)時(shí)間的總和除以no②編程任務(wù)對于給定的n個(gè)顧客需要的服務(wù)時(shí)間,計(jì)算最優(yōu)服務(wù)次序。③樣例例如,現(xiàn)在有5個(gè)顧客,他們需要的服務(wù)時(shí)間分別為:56,12,5,99,33o那么,按照所需服務(wù)時(shí)間從小到大排序?yàn)椋?,12,33,56,99。排序后的顧客等待服務(wù)完成的時(shí)間為:5,17,50,106,205;和為:383;平均等待時(shí)間為:76.6。4、實(shí)驗(yàn)方法步驟及注意事項(xiàng):①實(shí)驗(yàn)步驟c>d、分析問題,確定最優(yōu)的貪心選擇;針對貪心選擇過程進(jìn)行算法設(shè)計(jì);舉例驗(yàn)證算法的正確性;上機(jī)調(diào)試算法。②解題思路1)求解最優(yōu)服務(wù)次序問題的貪心策略為:先為所需服務(wù)時(shí)間最短的顧客服務(wù)。2)使用貪心算法求解最優(yōu)服務(wù)次序問題的算法,用C++語言描述。①,最優(yōu)值:(貪心算法)text(intn,intx[],ints口)〃s[]為保存每個(gè)顧客等待時(shí)間的數(shù)組inti;11intsum=O;for(i=0;i<n;i++){if(i>0){}s[i]=x[i]+s[i-l];sum+=s[i];}else{}s[i]=x[i];sum+=s[i];returnsum/n;}②,最優(yōu)解:(快速排序)voidQuickSort(inte[],intfirst,intend)(inti=firstJ=end,key=e[first];while(i<j)(while(i<j&&e[j]>=key)j-;e[i]=eD];while(i<j&&e[i]<=key)i++;3/11e[i]=key;if(first<i-l)QuickSort(e,first,i-1);if(end>i+l)QuickSort(e,i+l,end);}實(shí)驗(yàn)數(shù)據(jù):3.5010203034414243444546474849202122232098124689565768131498457172648354546981112121415168019802345678987643219681020303441424344454647484920212223209812468956576813149845717264835454/114698111212141516121314151617181920352.序號15124689565768131498457輸入文件(input.txt)輸出文件(output.txt)等待時(shí)間從小到大排序:445678899121314565768最小平均等待時(shí)間為:77201246895657681314984571726483545等待時(shí)間從小到大排序:4456788991213141726354548565768最小平均等待時(shí)間為:130等待時(shí)間從小到大排序:4445667888899991011121212131414151617202020212223263034354142434445454647484849565768最小平均等待時(shí)間為:363等待時(shí)間從小到大排序:1223344444556666677788888889999991011121212121313141414151516161717181919202020202122232630343535414243444545464748484956576880最小平均等待時(shí)間為:4321.4.5.1005/1113121434353434352221232428343344554499101980234567898764321968102030344142434445464748492021222320981246895657681314984571726483545469811121214151612131415161718192035等待時(shí)間從小到大排序:12233444445566666777888888899999910101112121212121313131414141415151616171718191920202020212122222323242628303334343434343535353541424344444445454647484849555657688099最小平均等待時(shí)間為:633根據(jù)對上述貪心算法數(shù)據(jù)的分析,解決此問題還可以用其他方法。text2(intn,intx[]){inti/sum=0;〃總等待時(shí)間for(i=0;i<n;i++)sum+=x[i]*(n-i);returnsum/n;}算法思想:假如顧客的所需要的服務(wù)時(shí)間分別為:1,2,3,4,5那么等待時(shí)間是6/11第一位顧客:1第二位顧客:1,2第三位顧客:1,2,3第四位顧客:1,2,3,4第五位顧客:1,2,3,4,5則總等待時(shí)間可寫成:1*5+2*4+3*3+4*2+5*1源程序:(以下采用文件輸入,如需手動輸入請將fin改為cino并去掉主函數(shù)中cout的注釋)#include<iostream.h>#include<fstream.h>text(intn,intx[],ints[]){inti;intsum=0;for(i=0;i<n;i++){if(i>0){s[i]=x[i]+s[i-l];sum+=s[i];}else{7/11sum+=s[i];}returnsum/n;}text2(intnjntx[]){}inti,sum=O;for(i=0;i<n;i++)sum+=x[i]*(n-i);returnsum/n;voidQuickSort(inte[],intfirst,intend){inti=firstJ=end,key=e[first];while(i<j){while(i<j&&e[j]>=key)j-;e[i]=eD];while(i<j&&e[i]<=key)i++;8/11e[j]=e[i];)e[i]=key;if(first<i-l)QuickSort(e,first,i-1);if(end>i+l)QuickSort(e,i+l,end);)/*voidsort(intnjntx口)〃冒泡排序{intij,c;for(j=0;j<n;j++){for(i=0;i<(n-l);i++)(}if(x[i]>x[i+l]){c=x[i];x[i]=x[i+l];x[i+l]=c;})9/11cout<<”等待時(shí)間從小到大排序:“;for(i=0;i<n;i++)cout?x[i]?'}*/voidmain(){}ifstreamfin("D:\\c++\\waitl.in");intx[1000];ints[1000]={0};intn;〃cout<<”請輸入顧客的個(gè)數(shù)十;fin?n;〃cout<<”請輸入顧客的等待時(shí)間:”;for(inti=0;i<n;i++)fin
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 北京課改版歷史八年級下冊第2課《新中國的初步鞏固》聽課評課記錄
- 人民版道德與法治九年級上冊4.2《城鄉(xiāng)差距》聽課評課記錄
- 招投文件合同范本(2篇)
- 生物燃料鍋爐購買合同(2篇)
- 人教版數(shù)學(xué)七年級下冊《7-2-2用坐標(biāo)表示平移》聽評課記錄
- 魯人版道德與法治九年級上冊9.1《公正律師法律援助》配套聽課評課記錄
- 湘師大版道德與法治七年級上冊2.3《快樂學(xué)習(xí)》聽課評課記錄
- 道德與法治部編版七年級上冊同步聽課評課記錄《第8課 生命可以永恒嗎》
- 【部編版】八年級歷史上冊《鴉片戰(zhàn)爭》公開課 聽課評課記錄及教學(xué)反思
- 蘇科版數(shù)學(xué)八年級上冊《課題學(xué)習(xí) 關(guān)于勾股定理的研究》聽評課記錄
- 財(cái)務(wù)管控的間接成本
- 藏族唐卡藝術(shù)特色分析
- 操作系統(tǒng)課程設(shè)計(jì)報(bào)告
- 護(hù)士團(tuán)隊(duì)的協(xié)作和領(lǐng)導(dǎo)力培養(yǎng)培訓(xùn)課件
- QFD模板含計(jì)算公式計(jì)分標(biāo)準(zhǔn)說明模板
- 醫(yī)院護(hù)理培訓(xùn)課件:《早產(chǎn)兒姿勢管理與擺位》
- 人工智能在生物醫(yī)學(xué)倫理與法律中的基因編輯與生命倫理問題研究
- 《論文的寫作技巧》課件
- 國有資產(chǎn)管理辦法-國有資產(chǎn)管理辦法條例
- 公務(wù)車輛定點(diǎn)維修車輛保養(yǎng)(附彩圖) 投標(biāo)方案
- 00015-英語二自學(xué)教程-unit3
評論
0/150
提交評論