[LeetCode 解题报告]119. Pascal's Triangle II

Given a non-negative index k where k ≤ 33, return the kth index row of the Pascal's triangle.

Note that the row index starts from 0.


In Pascal's triangle, each number is the sum of the two numbers directly above it.

Example:

Input: 3
Output: [1,3,3,1]

Follow up:

Could you optimize your algorithm to use only O(k) extra space?

class Solution {
public:
    vector<int> getRow(int rowIndex) {
        if (rowIndex < 0)
            return {};
        
        vector<int> res(rowIndex+1, 0);
        for (int i = 0; i <= rowIndex; i ++) {
            if (i == 0) {
                res[0] = 1;
                continue;
            }
            
            for (int j = rowIndex; j >= 1; j --) {
                res[j] = res[j] + res[j-1];
            }
        }
        return res;
    }
};
发布了401 篇原创文章 · 获赞 39 · 访问量 45万+

猜你喜欢

转载自blog.csdn.net/caicaiatnbu/article/details/103724066