119. 杨辉三角 II(C++)
1 题目描述
给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
在杨辉三角中,每个数是它左上方和右上方的数的和。
2 示例描述
输入: 3
输出: [1,3,3,1]
3 进阶
你可以优化你的算法到 O(k) 空间复杂度吗?
4 解题思路
根据杨辉三角的通项公式即可算出。
5 源码详解(C++)
class Solution {
public:
vector<int> getRow(int rowIndex) {
vector<int> res(rowIndex + 1) ;
res[0] = 1 ;
for ( int i = 1 ; i < rowIndex + 1 ; i ++ )
{
for ( int j = i ; j > 0 ; j -- )
{
res[j] = res[j] + res[j - 1] ;
}
}
return res ;
}
};