算法第三章作业
1.单调递增最长子序列
1.1 根据最优子结构性质,列出递归方程式,
dp[i]=max(dp[j]+1,dp[i]) (a[i]>a[j])
1.2 给出填表法中表的维度、填表范围和填表顺序。
一维数组表,填表范围: 0 < n , 填表顺序:从左向右依次填写
1.3 分析该算法的时间和空间复杂度
空间复杂度O(n) 时间复杂度O(n^2)
2. 你对动态规划算法的理解
把一个大问题逐渐分解,使其变成多个子问题,再对子问题求解,最后合起来求解大问题,可以利用记事本原理,将求结果的子问题记录,避免多次重复运算造成效率低下,方便理解,可以自低向上求解问题。
3. 说明结对编程情况
有时候可能跟同伴对一个问题产生两种看法,两种思路,但是也可以互相提供思路,互相完善,两个人一起讨论的效率也比自己一个人琢磨要高一些,通过一起讨论,参考网上资料很快也可以做出来。