版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息工程大学算法设计与分析动态规划—矩阵连乘之动态规划求解国家级实验教学示范中心计算机学科组规划教材算法设计与分析Python案例详解微课视频版动态规划解题步骤:找出最优解的性质,并刻划其结构特征。递归地定义最优值。以自底向上的方式计算出最优值。根据计算最优值时得到的信息,构造最优解。定义:m[i,j]表示AiAi+1…Aj矩阵连乘问题的最少乘法次数。1.找出最优解性质,刻画结构特征
m[i,j]表示Ai…Aj矩阵连乘问题的最少乘法次数。2.递归地定义最优值
3.以自底向上的方式计算最优值1234…n1234…nm[i,j]表示Ai…Aj矩阵连乘问题的最少乘法次数。1个矩阵2个矩阵3个矩阵4个矩阵…n个矩阵123456123456m[i,j]A1A2252020
15A3A415
55
10A5A610
2020
30p0p1p2p3p4p5P625201551020301.初始化m[i,i]=0,i=1~62.计算相邻2个矩阵m[1,2]=7500m[2,3]=1500m[3,4]=750m[4,5]=1000m[5,6]=6000p数组存放矩阵的行、列n=6个矩阵相乘07500000001500750100060001234561075002015003075040100050600060m[i,j]p0p1p2p3p4p5P62520155102030单选题。算一算,m[1,3]等于()A.1500B.4000C.7500p数组存放矩阵的行、列12345610750040005250201500250045003075025006250401000400050600060m[i,j]p0p1p2p3p4p5P625201551020303.计算相邻3个矩阵m[1,3],m[2,4],m[3,5],m[4,6]4.计算相邻4个矩阵m[1,4],m[2,5],m[3,6]p数组存放矩阵的行、列p0p1p2p3p4p5P625201551020305.计算相邻5个矩阵m[1,5]=7500m[2,6]=85006.计算相邻6个矩阵m[1,6]=11750p数组存放矩阵的行、列123456107500400052507500117502015002500450085003075025006250401000400050600060m[i,j]for(intr=2;r<=n;r++)/*r表示长度*/
for(inti=1;i<=n-r+1;i++)/*i表示起点*/{intj=i+r-1;/*j表示终点*/for(intk=i;k<j;k++)/*k表示断开位置*/
m[i][j]=min(m[i][k]+m[k+1][j]+p[i-1]*p[k]*p[j];}123456123456求解矩阵连乘问题的代码框架1.voidMatrixChain(int*p,intn,int**m,int**s)2.{3.for(inti=1;i<=n;i++)m[i][i]=0;4.for(intr=2;r<=n;r++){/*r是矩阵的数量*/5.for(inti=1;i<=n-r+1;i++)/*i是起始矩阵的编号*/6.{intj=i+r-1;/*j是终止矩阵的编号*/7.m[i][j]=m[i+1][j]+p[i-1]*p[i]*p[j];8.s[i][j]=i;9.for(intk=i+1;k<j;k++){/*k是断开的位置*/10.intt=m[i][k]+m[k+1][j]+p[i-1]*p[k]*p[j];11.if(t<m[i][j]){m[i][j]=t;s[i][j]=k;}}12.}13.}14.}空间复杂度:O(n2)时间复杂度:O(n3)123456123456123456123456单选题。矩阵连乘问题求解最优值采用如图(a)所示的计算次序,图(b)给出了另一种计算次序,正确吗?A.不正确B.正确(a)(b)123456101133320233330333404550560s[i,j]s[1,6]=3,得到(A1A2A3)(A4A5A6)s[1,3]=1,得到(A1(A2A3))s[4,6]=5,得到((A4A5)A6)最优解为:((A1(A2A3))((A4A5)A6))4.根据计算最优值时得到的信息,构造最优解voidtraceback(int**s,inti,intj){if(i==j){printf(“A%d“,i);return;}intk=s[i][j];printf(“(“);traceback(s,i,k);traceback(s,k+1,j);printf(“)“);}4.根据计算最优值时得到的信息,构造最优解分析括号((A1(A2A3))
((A4A5)A6))每个问题(矩阵长度超过1)的解方案外有一对括号思考:是否可以进行空间优化?采用下标转换法,用一维数组代替二维数组,可以节省(N2-N)/2的空间。123456107500400052507500117502015002500450085003075025006250401000400050600060m[i,j]石子合并问题:
有n堆石子排成一排,依次编号为1~n。现要将石子有次序地合并为一堆。规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为本次合并的得分。
试设计一算法,计算将n堆石子合并成一堆的最大得分。以n=4为例,每堆石子的个数为:3465,共5种合并方案。346510151810+15+18=43346511151811+15+18=4434657187+11+18=3611分析:每次只能选相邻2堆石子合并,最后一次合并是左边若干堆石子与右边若干堆石子进行合并,与矩阵连乘问题类似。sum(i,j)表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 危重症患者血糖管理指南
- 《GBT 34053.4-2017 纸质印刷产品印制质量检验规范 第 4 部分:中小学教科书》专题研究报告
- 《GB-T 40132-2021便携式电子产品用振动电机通 用规范》专题研究报告
- 《GB-T 26763-2011波音和空客系列飞机飞行品质监控项目规范》专题研究报告
- 《GB-T 15471-2013逻辑分析仪通 用规范》专题研究报告
- 《AQ-T 8012-2022安全生产检测检验机构诚信建设规范》专题研究报告
- 2026年三亚航空旅游职业学院单招职业技能考试题库附答案详解
- 《智慧景区服务与管理》课件-第一章 任务三 旅游景区服务质量管理
- 县域电商公共服务信息对接协议
- 智能完井滑套开关压力考试试卷和答案
- 2025年中共宜春市袁州区委社会工作部公开招聘编外人员备考题库附答案详解
- 2025年社保常识测试题库及解答
- 2025年铁路运输合同书
- 消防设施培训课件
- 疤痕子宫破裂护理查房
- 2025-2026学年人教版高一生物上册必修1第1-3章知识清单
- 肾内科常见并发症的观察与应急处理
- 《马克思主义与社会科学方法论题库》复习资料
- 西游记第64回课件
- 2025 年大学体育教育(田径教学)试题及答案
- 四川省金太阳2025-2026学年高三上学期11月联考英语试卷(含答案详解)
评论
0/150
提交评论