描述
给定非负索引k,其中k≤33,返回杨辉三角形的第k个索引行。
说明
1、注意行下标从 0 开始
2、在杨辉三角中,每个数字是它上面两个数字的总和。
样例
- 样例1
输入: 3
输出: [1,3,3,1]
- 样例2
输入: 4
输出: [1,4,6,4,1]
挑战
你可以优化你的算法到空间复杂度为O(k)吗?
解析
let getRow = function(rowIndex) {
rowIndex++;
let resultArr = [];
for (let i = 1; i < rowIndex + 1; i++) {
resultArr.push((Number((factorial(rowIndex - 1) / (factorial(i - 1) * factorial(rowIndex - i))).toFixed(0))));
}
return resultArr;
};
// 求阶乘
function factorial(num) {
if (num < 2) {
return 1;
} else {
return num * factorial(num - 1);
}
}