算法設(shè)計(jì)背包問題_第1頁
算法設(shè)計(jì)背包問題_第2頁
算法設(shè)計(jì)背包問題_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、精品文檔算法實(shí)驗(yàn)報(bào)告- 背包問題實(shí)驗(yàn)?zāi)康?掌握動(dòng)態(tài)規(guī)劃算法的基本思想,包括最優(yōu)子結(jié)構(gòu)性質(zhì)和基于表格的最優(yōu) 值計(jì)算方法。2熟練掌握分階段的和遞推的最優(yōu)子結(jié)構(gòu)分析方法。3學(xué)會(huì)利用動(dòng)態(tài)規(guī)劃算法解決實(shí)際問題。問題描述:給定n種物品和一個(gè)背包。物品i的重量是wi,體積是bi,其價(jià)值為vi , 背包的容量為c,容積為d。問應(yīng)如何選擇裝入背包中的物品,使得裝入背包中 物品的總價(jià)值最大 ? 在選擇裝入背包的物品時(shí), 對(duì)每種物品只有兩個(gè)選擇: 裝入 或不裝入,且不能重復(fù)裝入。輸入數(shù)據(jù)的第一行分別為:背包的容量c,背包的容積d,物品的個(gè)數(shù)n。接下來的n行表示n個(gè)物品的重量、體積和價(jià)值。輸出 為最大的總價(jià)值。問題分

2、析:標(biāo)準(zhǔn)0-1背包問題,MaxV表示前i個(gè)物品裝入容量為j的背包中時(shí)所能產(chǎn)生的最大價(jià)值, 結(jié)構(gòu)體 objec 表示每一個(gè)可裝入物品,其中 w 表示物品的重量, v 表示物品的價(jià)值。如果某 物品超過了背包的容量, 則該物品一定不能放入背包, 問題就變成了剩余 i-1 個(gè)物品裝入容 量為 j 的背包中所能產(chǎn)生的最大價(jià)值; 如果該物品能裝入背包, 問題就變成 i-1 個(gè)物品裝入 容量為 j-objeci.w 的背包所能產(chǎn)生的最大價(jià)值加上物品 i 的價(jià)值 objeci.v.復(fù)雜性分析時(shí)間復(fù)雜度,最好情況下為 0,最壞情況下為: (abc)源程序#include #include #include#in

3、clude #includeint V 200200200;int max(int a,int b)精品文檔if(a=b)return a;elsereturn b;int KnapSack(int n,int w,int z,int v,int x,int c,int b)int i,p,q;for(i=0;i=n;i+)Vi00=0; for(p=0;p=c;p+)for (q=0;q=b;q+) V0pq=0;for(i=0;i=n-1;i+)for(p=0;p=c;p+) for(q=0;q=b;q+) if(pwi&q=0;i-) if(VipqVi-1pq) xi=1; p=p-w

4、i; q=q-zi;else xi=0;cout 選中的物品是 :; for(i=0;in;i+) cout xi; coutendl;int r=0; for(i=0;in;i+)if(xi=1) r+=vi;else r+=0;2歡迎。下載精品文檔return r;void mai n()int mv;int w150;int z150;in t v150;int x150;int n,i;in t c;i nt b;背包最大容量和容積coutvv請(qǐng)輸入背包的最大容量: c;coutvv請(qǐng)輸入背包的最大容積:vvendl; cin b;coutvv輸入物品數(shù):n;coutvv請(qǐng)分別輸入物品的重量:vvendl; for(i=0;iv n;i+)ci n wi;coutvv請(qǐng)分別輸入物品的體積:vvendl; for(i=0;iv n;i+)cin zi;coutvv請(qǐng)分別輸入物品的價(jià)值:vvendl; for(i=0;iv n;i+)cin vi;mv=K napSack( n, w,z,v,x,c,b);coutvv最大物品價(jià)值

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論