118. 杨辉三角
这个题准确来说是用的递推,没有用到动态规划,动态规划比递推 多了一个决策的过程,这个没有决策的过程, 解题思路就是按照杨辉三角的特性从第一行,一行一行的往下递推
var generate = function(numRows) {
const res = [];
// i 表示行 j表示列
for(let i = 0; i < numRows; i ++) {
// 看上面的例子数组,第0行1个元素,第1行2个元素,第2行3个元素....
const row = new Array(i + 1).fill(1);
// 这里j从1开始到row.length-2结束 是因为每一行的第一个和最后一个其实是不需要算的,因为已经默认为1了,只有中间的才需要算
for( let j = 1; j < row.length - 1 ; j ++ ) {
row[j] = res[i-1][j-1] + res[i-1][j];
}
res.push(row)
}
return res;
};