算法第三章作业

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

我认为动态规划是一种求最优解的思想,与分治法类似,就是将一个大问题划分为若干个小问题,先求解子问题,然后从这些子问题的解得到原问题的解。我们可以用一个表来记录所有已解的子问题的答案。不管该子问题以后是否被用到,只要它被计算过,就将其结果填入表中。
2. 分别列出编程题1、2的递归方程(2分)

3-1
f[i] = 1 n=1
f[i] = max{ f[k]+ 1,f[i] } 1<k<i, n > 1 && a[j] < a[i]
3-2
m[i] = min{c[i][k] + m[k],c[i][n]} i <= k < n


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

目前我和搭档很少私下一起编程,一方面是两人住的不近,另一方面是一起思考会大脑一片空白,个人更喜欢自己一个人编程,自己一个人思考会更加专注、效率更高。

posted @ 2019-10-28 13:16  陈明欣  阅读(99)  评论(0编辑  收藏  举报