算法第三章作业

Posted on 2019-11-03 20:58  tinyea  阅读(118)  评论(0编辑  收藏  举报

1. 你对动态规划算法的理解(2分)

动态规划算法是通过求的子问题的最优解从而得到原问题最优解的算法,当子问题的数据要被多次使用的时候,可以通过备忘录或者填表的方式把计算过的数据保存下来,从而降低程序的时间复杂度。但自己做题的时候想要写出递归方程还是有点难度。

2. 分别列出编程题1、2的递归方程(2分)

1 . dp[i][j] = max(dp[i+1][j],dp[i+1][j+1]) + a[i][j]

2 . dp[i] = max(max(dp[i-1] + a[i],a[i]))

3. 说明结对编程情况(1分)

和伙伴一起编程可以互帮互助,对解决题目有很好的帮助,同时还能增加自己对动态规划的理解和记忆。