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