题目:
给定一个非负索引
rowIndex
,返回「杨辉三角」的第rowIndex
行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/pascals-triangle-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
示例1:
输入: rowIndex = 3
输出: [1,3,3,1]
示例2:
输入: rowIndex = 0
输出: [1]
示例3:
输入: rowIndex = 1
输出: [1,1]
提示:
· 0 <= rowIndex <= 33
解法:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
以上面这个杨辉三角为例, 除了每行的第一个数和最后一个数,中间的每个数都是上一行相同位置和前一位置的和。
把每一行的值存到数组 res 中,不断根据前一行的值更新后一行。(倒序)
/**
* @param {number} rowIndex
* @return {number[]}
*/
var getRow = function(rowIndex) {
const res = [];
for (let i = 0; i <= rowIndex; i++) {
res[i] = 1;
for (let j = i - 1; j > 0; j--) {
res[j] = res[j] + res[j-1];
}
}
return res;
};