資源描述:
《計算機(jī)算法實驗報告唐國峰》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃計算機(jī)算法實驗報告唐國峰 學(xué)號 《算法設(shè)計與分析》 實驗報告四 學(xué)專指成 生業(yè)導(dǎo) 姓、班教 名級師績 范振山09計算機(jī)一班 唐國峰 電子與信息工程系XX年4月6日 實驗四:貪心算法運用練習(xí) 一、實驗?zāi)康摹 ”敬螌嶒炇轻槍ω澬乃惴ǖ脑O(shè)計及應(yīng)用練習(xí),旨在加深學(xué)生對該部分知識點的理解,提高學(xué)生運用該部分知識解決問題的能力。 二、實驗步驟與要求 1.實驗前復(fù)習(xí)課程所學(xué)知識以及閱讀和理解指定的課外閱讀材料;2.學(xué)生獨自完成實驗指定內(nèi)容; 3.實驗結(jié)束后,用統(tǒng)
2、一的實驗報告模板編寫實驗報告。 4.提交說明:目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 電子版提交說明: a需要提交Wiar壓縮包,文件名為“《算法設(shè)計與分析》實驗四_學(xué)號_姓名”,如“《算法設(shè)計與分析》實驗四__張三”?! 壓縮包內(nèi)為一個“《算法設(shè)計與分析》實驗四_學(xué)號_姓名”命名的頂層文件夾, 其下為兩個文件夾,一個文件夾命名為“源程序”,另一個文件夾命名為“實驗報告電子版”。其
3、下分別放置對應(yīng)實驗成果物。 打印版提交說明: a不可隨意更改模板樣式?! 字體:中文為宋體,大小為10號字,英文為TimeNewRoman,大小為10號 字?! 行間距:單倍行距?! √峤唤刂箷r間:XX年4月20日16:00?! ∪?、實驗項目 請從下列題目列表中任選2道或3道題目,運用貪心算法對問題的進(jìn)行求解。備選題目列表如下: 1.教材第106頁所記述的0-1背包問題。2.教材課后習(xí)題4-9;3.教材課后習(xí)題4-21。 四、實驗過程目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的安全感。為了適應(yīng)公司新
4、戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 題目一:給定n種物品和一個背包,物品i的重量是wi,其價值為vi,背包的容量為c。問如何選擇裝入背包中的物品,使得裝入背包中物品的總價值最大? 1.題目分析 給定c>0;wi>0;vo>0,1≤i≤n,要求找出一個n元0-1向量,xi∈{0,1},1≤i≤n,使得∑wixi≤c,而且∑vixi達(dá)到最大。 2.算法構(gòu)造 首先計算每種物品單位重量的價值;然后,依貪心算法策略,將盡可能多的單位重量價值最高的物品裝入背包。若將這種物品全裝入背包后,背包內(nèi)的物品總重量為超過c,則選擇單位質(zhì)
5、量價值次高的物品并盡可能多地裝入背包。3.算法實現(xiàn) //:定義控制臺應(yīng)用程序的入口點。// #include""#includeusingnamespacestd; //使用冒泡排序?qū)[]/w[]單位價值的物品進(jìn)行從大到小的排序voidSort(intn,flo(來自:寫論文網(wǎng):計算機(jī)算法實驗報告唐國峰)atv[],floatw[]){} //貪心算法主要步驟 voidKnapsack(intn,floatM,floatv[],floatw[],floatx[]){目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個
6、行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 Sort(n,v,w);//對要放入的物品進(jìn)行排序inti; for(i=0;ic)break;//質(zhì)量大于容量的不予考慮x[i]=1; c-=w[i];//物品放入,剩余容量減少x[i]=0;floatt1,t2;for(inti=0;i>n; cout>w[i];cin>>v[i];inti; for(i=0;i#includeusingnamespacestd;intmain(){ intn,k; boolisSolution=true;in
7、tm=0,count=0;ofstreaminfile("");cout>n>>k; infile>a[i]; //樞軸元素t為數(shù)組最左側(cè)的元素 //i往右移動j往左移動當(dāng)指向同一位置時掃描完成 //如果右側(cè)指針元素比軸測元素大,指針元素左移//確保i在j左邊//當(dāng)右側(cè)指針元素比軸測元素小時,交換兩指針指向數(shù)的位置//如果左側(cè)指針元素比軸測元素小,指針元素右移//確保i在j左邊//當(dāng)左側(cè)指針元素比軸測元素大時,交換兩指針指向