LeetCode题解 | [简单-数组] 118. 杨辉三角

118. 杨辉三角

题目

给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

img

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

思路

模拟,直接由上一层生成下一层。

代码

/*
2021/2/2
*/


class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> vv;

        int n = numRows;
        while (n--) {
            vector<int> v;
            vv.push_back(v);
        }

        for (int i = 0; i < numRows; i++) {
            vv[i].push_back(1);
            if (i > 1) {
                for (int j = 0; j < i-1; j++) {
                    vv[i].push_back(vv[i-1][j]+vv[i-1][j+1]);
                }
            }
            if (i > 0) {
                vv[i].push_back(1);
            }
        }

        return vv;
    }
};
posted @ 2021-02-11 19:33  DylanLiuH2O  阅读(37)  评论(0编辑  收藏  举报