第三章作业

1.1 根据最优子结构性质,列出递归方程式,说明方程式的定义、边界条件
(1)递归方程式:a[i][j]=a[i][j]+max(a[i+1][j],a[i+1][j+1])
(2)定义:设 a[i][j] 表示从第 i 行第 j 列出发到达底部的最大路径和,从 (i, j) 出发到底部的最大路径和,等于当前位置的值加上从下一行左下方 (i+1, j) 或右下方 (i+1, j+1) 出发的最大路径和中的较大值。
(3)边界条件:当 i=n-1 时,a[n-1][j] 保持不变。
1.2 给出填表法中表的维度、填表范围和填表顺序。以及原问题的最优值是哪个表格元素
(1)表的维度:a[100][100]
(2)填表范围:i 从 n-1 到 0,j 从 0 到 i
(3)填表顺序:从下到上,从左到右
(4)最优值:a[0][0](从顶部出发到底部的最大路径和)
1.3 分析该算法的时间和空间复杂度
(1)时间复杂度:双重循环,外层循环 n 次,内层循环最多 n 次,时间复杂度为 O(n*n)。
(2)空间复杂度:直接在 a[100][100] 上进行计算,没有使用额外的存储空间,空间复杂度为 O(1)。
对动态规划算法的理解和体会
动态规划的核心是捕捉重叠子问题与最优子结构,通过表格存储中间结果,将暴力解法的指数级复杂度优化为多项式级。其关键在于合理定义状态与设计转移方程,无需重复计算子问题,高效求解全局最优。该方法灵活且通用,是解决各类优化问题的重要范式。

posted @ 2025-11-18 15:52  罗柔柔  阅读(4)  评论(0)    收藏  举报