背包问题:
异宝n件,该背包只可承重W kg。每件珍宝都有重量wi和价值pi。
解:
按照pi/wi 比率对珍宝进行排序,形成pi/wi 大于 p i+1/w i+1。
KNAPSACK (p, w, W)
load = 0;
i = 1;
while (load<W && i<=n)
{
if(wi <= W-load)
{
take item i;
load = load + wi;
}
i = i+1;
}
背包问题:
异宝n件,该背包只可承重W kg。每件珍宝都有重量wi和价值pi。
解:
按照pi/wi 比率对珍宝进行排序,形成pi/wi 大于 p i+1/w i+1。
KNAPSACK (p, w, W)
load = 0;
i = 1;
while (load<W && i<=n)
{
if(wi <= W-load)
{
take item i;
load = load + wi;
}
i = i+1;
}