题目
118. 杨辉三角
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。
在「杨辉三角」中,每个数是它左上方和右上方的数的和。

示例 1:
输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
示例 2:
输入: numRows = 1
输出: [[1]]
提示:
- 1 <= numRows <= 30
我的代码(TypeScript)
function generate(numRows: number): number[][] {
if (numRows <= 0) {
return [];
}
let result: number[][] = [[1]];
for (let i: number = 1; i < numRows; i++) {
let currRow: number[] = new Array(i + 1);
currRow[0] = 1;
for (let j: number = 1; j < i; j++) {
currRow[j] = result[i - 1][j - 1] + result[i - 1][j];
}
currRow[i] = 1;
result.push(currRow);
}
return result;
};
点评
确实是简单题目……
或者可以从每一行的第一个开始做?感觉复杂度一样。
官方解法也没什么特别的。
baddif@gmail.com
AI简历优化站
AI求职跟踪器(建设中)
主站(建设中)
相关平台
Github Issues / Notion / Blog