Pascal's Triangle II leetcode

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?

 

Subscribe to see which companies asked this question

依次在上一行的基础上计算下一行,技巧就是从后向前计算,避免前面的计算影响后面的计算
vector<int> getRow(int rowIndex) {
    vector<int> ret(rowIndex+1, 0);
    ret[0] = 1;
    for (int i = 1; i <= rowIndex; ++i)
        for (int j = i; j >= 1; --j)
            ret[j] += ret[j - 1];
    return ret;
}

 

posted @ 2016-01-06 20:46  sdlwlxf  阅读(93)  评论(0编辑  收藏  举报