算法第三章作业

算法第三章作业


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

我觉得动态规划是一种分治法的伪进阶型,它将一个大问题可以分成若干个小问题后,解决子问题,然后将子问题的解插入到一个表中,用一个表来记录所有的已经得到答案的子问题的解,后面就可以发现,无论子问题的解是否被用到,其都在表中,接着求问题便可以节省大量的时间。

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

3-1

m[i] = 1    (n=1)

m[i] = max{ m[k}+1 } (1=<k<i)

3-2

m[i] = min{ c[i][j] +m[k],c[i][j] }   (i>1)

(若i=1,则为0)  

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

和同学一起进行编程,同时能相互指出错误,并且能够探讨思路,在讨论中还能加深对题目的理解,然后推导出递归方程,接着能够对代码进行分块处理,形成一个个清晰的思路,在写代码的同时还锻炼了我们审计代码的能力。

posted @ 2019-10-29 22:18  青梅茶  阅读(131)  评论(0编辑  收藏  举报