首页 > 其他 > 详细

第三章作业

时间:2018-11-14 13:23:02      阅读:149      评论:0      收藏:0      [点我收藏+]

对动态规划的理解

就是将一个问题分解为很多个子问题,然后通过求解子问题来解决原问题。然后每个子问题的解都会被填入一个表中,便于对子问题解的利用和存放。动态规划的解决经常和递归方程联系在一起。其实只要有了解决思路和想法就可以由内而外的解决问题,但是有时候要想出解决方法也不容易,想出了之后编程起来就不会很复杂。

编程1的递归方程

m[i]=max(m[j]+1) ,其中m[i]表示第i个数的最长递增子序列,其中0<=j<i。

编程2的递归方程

m[i][j]=min(m[i][k]+m[k][j])

编程情况

第一题还算是比较顺利,找到被比较的数前面比他小的数的最长递增子序列再加一,通过找到子问题然后求解。第二题在用k做循环的时候想了很久,后来套用了矩阵相乘才得以解决。

第三章作业

原文:https://www.cnblogs.com/wwency/p/9957394.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!