算法第三章作业

1.单调递增最长子序列

1.1  递归方程式:f[i] = max{f[j]}+1

1.2  表的维度是一维; 填表范围是0到n;填表顺序是从左到右

1.3  时间复杂度:O(n^2) 空间复杂度:O(n)

2.对动态规划算法的理解

   使用动态规划的问题特征是最优子结构性质和重叠子问题性质,该算法通常可以按以下几个步骤进行:1.找出最优解的性质,并刻画其结构特征 2.递归的定义最优值 3.计算出各子结构的最优值;4.通常采用自底向上的方式根据计算最优值时得到的信息,构造最优解

   动态规划思想与分治法类似,都是将问题分解为多个子问题,通过求解子问题来得到最终答案,而动态规划的优势在于,动态规划防止了子问题的重复计算,每个问题只计算一次,自底向上地求出原问题的解。

3.结对编程情况

   我感觉我和同伴也在慢慢的“轻车熟路”起来,两个人都是先思考再交流各自的想法,但是对我来说最大的问题并不是做出代码,而是向对方还有老师讲述自己的看法的时候,发现自己真的不善于去表达,这真的是个很大的问题,但是现在也慢慢的习惯起来了。    

posted @ 2020-11-01 11:31  hehew  阅读(58)  评论(0编辑  收藏  举报