貪心算法背包問(wèn)題詳解 貪心法和動(dòng)態(tài)規(guī)劃法的區(qū)別?
貪心法和動(dòng)態(tài)規(guī)劃法的區(qū)別?貪婪算法是一種策略,一種理念。。。它沒(méi)有固定的模型。例如,最簡(jiǎn)單的背包問(wèn)題可以用貪婪的思想來(lái)解決。可能有很多方法可以解決這個(gè)問(wèn)題。性?xún)r(jià)比最高的、價(jià)值最高的和權(quán)重最輕的策略不能
貪心法和動(dòng)態(tài)規(guī)劃法的區(qū)別?
貪婪算法是一種策略,一種理念。。。它沒(méi)有固定的模型。例如,最簡(jiǎn)單的背包問(wèn)題可以用貪婪的思想來(lái)解決。可能有很多方法可以解決這個(gè)問(wèn)題。性?xún)r(jià)比最高的、價(jià)值最高的和權(quán)重最輕的策略不能確保您選擇的貪婪策略在所有情況下都是絕對(duì)最優(yōu)的。動(dòng)態(tài)規(guī)劃的思想是分而治之的解決方案,冗余將復(fù)雜問(wèn)題逐個(gè)分解為小問(wèn)題。每個(gè)小問(wèn)題都得到最優(yōu)解,然后從這些最優(yōu)解中得到更好的答案。一個(gè)典型的例子是塔的問(wèn)題。你可以通過(guò)畫(huà)圖看到
貪心算法在解決問(wèn)題時(shí)總是做出最佳選擇(但結(jié)果可能不是最好的)
典型算法:prim算法和Kruskal算法
分治算法的基本思想是將一個(gè)N尺度的問(wèn)題分解成k個(gè)較小的子問(wèn)題,
這些子問(wèn)題相互獨(dú)立,性質(zhì)與原問(wèn)題的原問(wèn)題解相同。
典型算法:河內(nèi)塔,對(duì)分搜索
動(dòng)態(tài)規(guī)劃,通過(guò)將原問(wèn)題分解成相對(duì)簡(jiǎn)單的子問(wèn)題來(lái)解決復(fù)雜問(wèn)題的一種方法
典型算法:背包問(wèn)題
回溯算法,也稱(chēng)為試算法,是一種系統(tǒng)地搜索問(wèn)題解的方法
典型算法:八皇后問(wèn)題
根據(jù)單位權(quán)值的最大優(yōu)先級(jí)策略目前看來(lái)是最好的(結(jié)果不一定是最好的)
這里是貪心算法,考慮到0/1背包問(wèn)題,1,2,3的最大值是430(50,200,180)
考慮到部分包含,1,2,3,4(4,40)的最大值是630(50,200,180)]225/45*40)
2,3,4的最大值確實(shí)是605,但不是貪心算法計(jì)算出來(lái)的
所以答案是C