貪心演算法解決0-1揹包問題,全域性最優解通過區域性最優解來獲得!比動態規劃解決揹包問題更靈活!
//0-1揹包貪心演算法問題
class tanxin
}//生成資料
$n=10;
for($i=1;$i<=$n;$i++)
//輸出結果
function display($x)
}//按照**和重量比排序
function tsort(&$x)}}
}//貪心演算法
function tanxin($x,$totalweight=50)
} if($iprice*($totalweight/$x[$i]->weight);
return $allprice;
}tsort($x);//按非遞增次序排序
display($x);//顯示
echo '0-1揹包最優解為:';
echo tanxin($x);
本文標題: php貪婪演算法解決0-1揹包問題例項分析
本文位址:
演算法(揹包問題 01揹包問題)
01揹包問題 有 n 件物品和乙個容量是 v 的揹包。每件物品只能使用一次。第 i 件物品的體積是 vi,價值是 wi。求解將哪些物品裝入揹包,可使這些物品的總體積不超過揹包容量,且總價值最大。輸出最大價值。輸入格式 第一行兩個整數,n,v,用空格隔開,分別表示物品數量和揹包容積。接下來有 n 行,...
演算法 0 1揹包問題
揹包問題是演算法中的乙個經典問題,它有很多子問題,比如0 1揹包問題,完全揹包問題,多重揹包問題等等。而今天所說的0 1揹包問題的原始描述為 現在有n件物品和乙個最大承載重量為m的揹包,要從這n件物品中選擇其中的k 1 k n 件,使得所選擇的物品的價值總和最大且其總重量不超過揹包的最大載重量。這n...
演算法 01揹包問題
對於乙個物品,選擇放還是不放,只有兩個選擇,故屬於01問題.物品 public class item 第n件物品,放入剩餘容量為leftweight的揹包中所獲得的最大價值 static int getmaxvalue listlist,int n,int leftweight 如果當前n的容量超過...