- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
0-1背包(动态规划、回溯)和背包(贪心)实验报告
西安郵電學院 目:0-1背包(动态规划、回溯)和背包(贪心)
院系名称: 计算机学院
专业名称: 软件工程专业
班 级: 0903班
学生姓名: 张桥
学号(8位): 23)
指导教师: 陈琳
时间: 2011年12月一. 设计目的
通过上机实验:
深刻理解和掌握0-1背包(动态规划算法、回溯算法)和背包(贪心算法)的问题描述、算法设计思想、程序设计、算法复杂性分析、他们的区别及联系。
二. 设计内容
1问题的描述
0-1背包问题
给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为c。问应如何选择装入背包中的物品,使得装入背包中物品的总价值最大?
(2)背包问题与0-1背包问题类似,所不同的是在选择物品i装入背包时,可以选择物品i的一部分,而不一定要全部装入背包,1=i=n。
2算法设计思想
(1)0-1背包问题
动态规划法:是将待求解的问题分解为若干个子问题(阶段),按顺序求解子阶段,前一子问题的解,为后一子问题的求解提供了有用的信息。在求解任一子问题时,列出各种可能的局部解,通过决策保留那些有可能达到最优的局部解,丢弃其他局部解。依次解决各子问题,最后一个子问题就是初始问题的解。
由于动态规划解决的问题多数有重叠子问题这个特点,为减少重复计算,对每一个子问题只解一次,将其不同阶段的不同状态保存在一个二维数组中。
设所给0-1背包问题的子问题的最优值为m(i,j),即m(i,j)是背包容量为j,可选择物品为i,i+1,…,n时0-1背包问题的最优值。由0-1背包问题的最优子结构性质,可以建立计算m(i,j)的递归式如下。
回溯法:在问题的解空间树中,按深度优先策略,从根结点出发有哪些信誉好的足球投注网站解空间树。算法有哪些信誉好的足球投注网站至解空间树的任意一点时,先判断该结点是否包含问题的解。如果肯定不包含,则跳过对该结点为根的子树的有哪些信誉好的足球投注网站,逐层向其祖先结点回溯;否则,进入该子树,继续按深度优先策略有哪些信誉好的足球投注网站。
背包问题
贪心算法:首先计算每种物品单位重量的价值Vi/Wi,然后,依贪心选择策略,将尽可能多的单位重量价值最高的物品装入背包。若将这种物品全部装入背包后,背包内的物品总重量未超过C,则选择单位重量价值次高的物品并尽可能多地装入背包。依此策略一直地进行下去,直到背包装满为止。
三.测试数据及运行结果
正常测试数据(3组)及运行结果
0-1背包问题:
动态规划法:
回溯法:
背包问题:
贪心算法:
四.调试情况,设计技巧及体会
本次的实验大体理解和掌握0-1背包(动态规划算法、回溯算法)和背包(贪心算法)的问题描述、算法设计思想、程序设计、算法复杂性分析、他们的区别及联系。
通过本次上机实验,我对0-1背包(动态规划算法、回溯算法)和背包(贪心算法)有了更为深刻的了解,利用动态规划算法、回溯算法和贪心可以将问题简化,这有助于我们在实际问题中解决一些复杂性较大的问题,提高程序的运行效率。但要注意他们的区别与不同的应用场景。
五. 源代码
1)0-1背包:
动态规划法:
#include stdio.h
#define MAX 20
void Knapsack(int *value, int *weight, int column, int length, int (*middle)[MAX]);
void TraceBack(int (*middle)[MAX], int *weight, int column, int length, int *x);
int Max(int x, int y);
int Min(int x, int y);
int Min(int x, int y)
{
return x = y ? x : y;
}
int Max(int x, int y)
{
return x = y ? x : y;
}
void TraceBack(int (*middle)[MAX], int *weight, int column, int length, int *x)
{
int i;
for(i = 1; i length; i++)
if(middle[i][column] == middle[i + 1][column])
x[i] = 0;
else
{
x[i] = 1;
column -= weight[i];
}
x[length] = (middle[length][column] ? 1 : 0);
}
void Knapsack(int *value, int *weight, int column, int length,
您可能关注的文档
- 必威体育精装版ssm的框架.docx
- 商务英语基础教案.doc
- 泛读 词汇整理Unit 8 Getting Enough Sleep Dream On.doc
- 008-COORDINATION AND NOTIFICATION协调和通知程序.doc
- 双核与程序的关系.doc
- 适合互联网公司的薪酬体制.docx
- 为你英语作文加分的词组.doc
- 韩愈-师说翻译.doc
- 贸易合同样本中英文.doc
- 九年级英语U2T1测试题.doc
- 四川省德阳市罗江中学2025届高三考前热身化学试卷含解析.doc
- 山东省枣庄现代实验学校2025届高三下学期第五次调研考试化学试题含解析.doc
- 吉林省长春市十一高中等九校教育联盟2025届高三一诊考试生物试卷含解析.doc
- 2025届江苏省盐城市伍佑中学高考仿真模拟化学试卷含解析.doc
- 2025届广西贺州中学高考冲刺押题(最后一卷)生物试卷含解析.doc
- 安徽省池州市贵池区2025届高三第一次模拟考试生物试卷含解析.doc
- 宁夏银川一中2025届高三(最后冲刺)化学试卷含解析.doc
- 广东省广州市增城区四校联考2025届高考压轴卷化学试卷含解析.doc
- 2025届邯郸市第一中学高考生物必刷试卷含解析.doc
- 2025届安徽省安庆市石化第一中学高考仿真卷化学试卷含解析.doc
最近下载
- 绿色金融改革创新试点政策对企业经营绩效的影响研究.pdf VIP
- 赣州市南康区赞贤小学开展“扣好人生第一粒扣子——我爱我的祖国主题演讲比赛活动方案.doc
- 个人医保承诺书模板.docx VIP
- 绿色金融改革创新试点政策对企业绿色创新的影响-来源:创新与创业教育(第2022002期)-中南大学.pdf VIP
- 信息技术环境下的数学教学设计结题报告.doc VIP
- 国金证券:新型消费研究系列-便利店-小业态大生意-打造便利生活.pdf
- HIKARI富山奇立铺布机使用说明书.doc
- 部编版语文四年级上册第七单元大单元教学设计核心素养目标.pdf VIP
- 三级助理舞台灯光师题库考点(三).docx VIP
- (格式已排好)国家开放大学电大《计算机应用基础(专)》终结性考试大作业答案任务一.doc
文档评论(0)