试题详情
- 简答题用贪心算法设计0-1背包问题。要求:说明所使用的算法策略;写出算法实现的主要步骤;分析算法的时间。
-
首先计算每种物品单位重量的价值Vi/Wi,然后,依贪心选择策略,将尽可能多的单位重量价值最高的物品装入背包。若将这种物品全部装入背包后,背包内的物品总重量未超过C,则选择单位重量价值次高的物品并尽可能多地装入背包。依此策略一直地进行下去,直到背包装满为止。
具体算法可描述如下:
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];
}
if(i<=n)x[i]=c/w[i];
} 关注下方微信公众号,在线模考后查看
热门试题
- 在格式工具栏中,B、I、U三者的作用分别
- 信息社会,()成为人的基本素养。
- 什么是信息的载体依附性?举例说明。
- C语言中,假设所有变量均为整型,表达式(
- “明修栈道,暗渡陈仓”主要体现了信息的哪
- 网上“黑客”是指()的人。
- 演示文稿素材的类型包括()。
- 在进行问题的计算复杂性分析之前,首先必须
- 在一次教研小组的研讨会上,有一位刚从事教
- VB中,()是随机函数,返回大于等于0并
- 在关系型数据库中,数据表中的行和列分别称
- 下列不属于传播病毒的载体是()。
- 有人认为在课堂中,师生保持“零距离接触”
- 下列不属于信息技术范畴的是()。
- 课题:“利用Frontpa
- 世界上第一台计算机ENIAC是1946年
- 用Dreamweaver编辑网页时,下列
- 在计算机网络中,所有的计算机均连接到一条
- 新课程改革要求在信息技术课堂中让学生勤快
- 在E—R图中,矩形框用于表示()。