leetcode 119. 杨辉三角 II(Pascal's Triangle II)

题目描述:

给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。


在杨辉三角中,每个数是它左上方和右上方的数的和。

示例:

    输入: 3
    输出: [1,3,3,1]

进阶:

  • 你可以优化你的算法到 O(k) 空间复杂度吗?

解法:

class Solution {
public:
    vector<int> getRow(int rowIndex) {
        if(0 == rowIndex){
            return {1};
        }else if(1 == rowIndex){
            return {1, 1};
        }
        vector<int> res(2, 1);
        for(int i = 2; i <= rowIndex; i++){
            res.push_back(1);
            for(int j = i - 1; j > 0; j--){
                res[j] += res[j-1]; 
            }
        }
        return res;
    }
};

猜你喜欢

转载自www.cnblogs.com/zhanzq/p/10559183.html