版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、动态规划算法设计一、实验内容编程实现图示多段图的最短路径问题的动态规划算法。(源代码见附录a)12345678111009129732811116535524644211127二、实验目的及环境 实验目的:1、理解动态规划算法的概念; 2、掌握动态规划算法的基本要素;3、掌握设计动态规划算法的步骤; 4、通过应用范例学习动态规划算法的设计技巧与策略。实验环境: win7 系统下vc+6.0环境三、 实验分析与设计采用动态规划算法的两个基本要素:最优子结构性质:原问题的最优解包含了其子问题的最优解。子问题的重叠性质:每次产生的子问题并不总是新问题,有些子问题被反复计算多次。实验定义:#defin
2、e n 12 /*定义顶点数*/ #define k 5 /*定义段数*/void init(int cost ) /初始化图void fgraph(int cost ,int path ,int d )向前递推算法求最短路径void bgraph(int bcost ,int path1 ,int d )向后递推算法求最短路径向前递推算法实现: int r,j,temp,min; for(j=0;j=1;j-) temp=0; min=cjtemp+costtemp; /初始化最小值for(r=0;r=n;r+) if(cjr!=max) if(cjr+costr)min) /找到最小的r
3、min=cjr+costr; temp=r; costj=cjtemp+costtemp; dj=temp; path1=1; pathk=n; for(j=2;jk;j+) pathj=dpathj-1; 后递推算法与前递推算法类似。四、 实验结果显示五、 实验总结通过理解最优子结构的性质和子问题重叠性质,在vc+6.0环境下实现动态规划算法。动态规划算法是由单阶段的决策最优逐步转化为多阶段的决策最优,最后构造一个最优解。经过反复的调试操作,程序运行才得出结果。六、 附录 a#include #include #include #include #define max 100 #define
4、 n 12 #define k 5 int cnn; void init(int cost) int i,j; for(i=0;i13;i+) for(j=0;j13;j+) cij=max; c12=9; c13=7;c14=3; c15=2; c26=4; c27=2; c28=1; c36=2; c37=7; c48=11;c57=11;c58=8; c69=6; c610=5; c79=4; c710=3;c810=5;c811=6;c912=4;c1012=2;c1112=5; void fgraph(int cost,int path,int d) int r,j,temp,min
5、; for(j=0;j=1;j-) temp=0; min=cjtemp+costtemp; for(r=0;r=n;r+) if(cjr!=max) if(cjr+costr)min) min=cjr+costr; temp=r; costj=cjtemp+costtemp; dj=temp; path1=1; pathk=n; for(j=2;jk;j+) pathj=dpathj-1; void bgraph(int bcost,int path1,int d) int r,j,temp,min; for(j=0;j=n;j+) bcostj=0; for(j=2;j=n;j+) tem
6、p=12; min=ctempj+bcosttemp; for(r=0;r=n;r+) if(crj!=max) if(crj+bcostr)=2;i-) path1i=dpath1i+1; void main() int cur=-1; int cost13,d12,bcost13; int pathk; int path1k; init(cost); fgraph(cost,path,d); cout使用向前递推算法后的最短路径:nn; for(int i=1;i=5;i+) coutpathi ; coutn; coutendl最短路径为长度:cost1endl; coutn; coutn使用向后递推算法后的最短路径:nn;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中继泵站运行工岗位安全水平考核试卷含答案
- 双酚A装置操作工安全行为考核试卷含答案
- 2026年云原生环境中数据迁移的加密传输
- 扶贫项目就业机会研究报告
- 多算算人工智能平台
- 健康宣教开展
- 人教版八年级数学下册专题讲解+课后训练及答案解析:二次根式
- 企业部门年度工作总结
- 校内消防管理制度
- 某区重点工程清水混凝土模板施工方案-实施方案
- 2026年江苏省苏州市《保安员证》考试题库含答案(完整)
- 2025四川泸州临港物业管理有限公司招聘16人笔试历年常考点试题专练附带答案详解
- 卫生急救知识试题及答案
- 2025年MLED直显产业白皮书(节选)
- 脚手架施工安全技术安全生产模板
- 2026年临床水平测试题库及答案全套试题及答案
- 2026年政府会计考试高频考点解析
- 2026年四川省县级干部任职资格考试综合练习题及答案
- YY 0017-2026骨接合植入器械金属接骨板
- 肝移植科普讲解
- 废气处理净化项目可行性研究报告立项申请报告模板
评论
0/150
提交评论