LeetCode—119.Pascal's Triangle II

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

Note that the row index starts from 0.


与118题不同之处在于,本题只返回第k行。要求空间限制在O(k)。

由于有空间限制,因此不能把每行都算出来。用到以下性质:

除每行最左侧与最右侧的数字以外,每个数字等于它的左上方与右上方两个数字之和(也就是说,第n行第k个数字等于第n-1行的第k-1个数字与第k个数字的和)。可用此性质写出整个杨辉三角形。

从右往左写。vector初始默认为0。


class Solution {

public:

    vector<int> getRow(int rowIndex) {

        vector<int> ret(rowIndex+1);

        ret[0] = 1;

        for(int i=0; i<rowIndex; i++){

            for(int j=i+1; j>0; j--){

                ret[j]=ret[j] + ret[j-1];

            }

        }

        return ret;

    }

};

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容