第四章贪心算法.ppt.pptVIP

  • 21
  • 0
  • 约8.58千字
  • 约 47页
  • 2016-05-14 发布于天津
  • 举报
第四章贪心算法.ppt

* 4.2 贪心算法的基本要素 背包问题: 与0-1背包问题类似,所不同的是在选择物品i装入背包时,可以选择物品i的一部分,而不一定要全部装入背包,1≤i≤n。 这2类问题都具有最优子结构性质,极为相似,但背包问题可以用贪心算法求解,而0-1背包问题却不能用贪心算法求解。 * 4.2 贪心算法的基本要素 首先计算每种物品单位重量的价值Vi/Wi,然后,依贪心选择策略,将尽可能多的单位重量价值最高的物品装入背包。若将这种物品全部装入背包后,背包内的物品总重量未超过C,则选择单位重量价值次高的物品并尽可能多地装入背包。依此策略一直地进行下去,直到背包装满为止。 具体算法可描述如下: 用贪心算法解背包问题的基本步骤: * 4.2 贪心算法的基本要素 void Knapsack(int n,float M,float v[],float w[],float x[]) { Sort(n,v,w); int i; for (i=1;i=n;i++) x[i]=0; float c=M; for (i=1;i=n;i++) { if (w[i]c) break; x[i]=1; c-=w[i]; }

文档评论(0)

1亿VIP精品文档

相关文档