1. 实践题目
7-1数字三角形
给定一个由 n行数字组成的数字三角如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
输出 30
2. 问题描述
使用初始值-1的二位数组记录每个子问题的最大值,进而得到最大数字总和路径
3.算法描述
递归(方程:m[i][j] = a[i][j] i=n;
m[i][j] = m[i+1][j] + m[i+1][j+1] + a[i][j];
)
然后从下往上查找相加
4。空间复杂度
O(n) = n^2
5.心得
递归方法思路是比较清楚的,但是如果想按照代码思路走一遍感觉好绕啊
7-1数字三角形
给定一个由 n行数字组成的数字三角如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
输出 30
2. 问题描述
使用初始值-1的二位数组记录每个子问题的最大值,进而得到最大数字总和路径
3.算法描述
递归(方程:m[i][j] = a[i][j] i=n;
m[i][j] = m[i+1][j] + m[i+1][j+1] + a[i][j];
)
然后从下往上查找相加
4。空间复杂度
O(n) = n^2
5.心得
递归方法思路是比较清楚的,但是如果想按照代码思路走一遍感觉好绕啊