- 11
- 0
- 约4.69千字
- 约 6页
- 2016-04-29 发布于浙江
- 举报
(hydx2012@126.com)public int Knapsacountk(int n ,int count)
{
if(n==-1||count==0)
return 0;
int tmp1=Knapsacountk(n-1,count);
if(weight[n]count)
{
result[n]=0;
return tmp1;
}
int tmp2=value[n]+Knapsacountk(n-1,count-weight[n]);
if(tmp1tmp2)
{
result[n]=0;
return tmp1;
}
result[n]=1;
return tmp2;
}
2.最大子段和: 动态规划算法
int MaxSum(int n, int a[])
{ int sum=0, b=0; //sum存储当前最大的b[j], b存储b[j]
for(int j=1; j=n; j++) {
if (b0) b+= a[j] ;
else b=a[i]; ; //一旦某个区段和为负,则从下一个位置累和
if(b
原创力文档

文档评论(0)