您的位置:首页 > 其它

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

2017-04-28 10:17 483 查看
题目

Given an index k, return the kth row of the Pascal's triangle.

For example, given k = 3,

Return 
[1,3,3,1]
.

Note:

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

自己还是蛮笨的,题目说只用O(k)的空间复杂度,我就真用了那么多的时间复杂度。实际上,O(1)的额外空间复杂度足矣!需要注意的是第二层的循环次序,必须是从后向前才行。

代码

class Solution {
public:
    vector<int> getRow(int rowIndex) {
        vector<int> ret(rowIndex + 1, 1);  
        for(int i = 2; i <= rowIndex; i++) { 
            for (int j = i - 1; j >= 1; --j) {
                ret[j] = ret[j] + ret[j-1];
            }
        }
        return ret;  
    }
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: