Leetcode典型题解答和分析、归纳和汇总——T118(杨辉三角)

问题描述:

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

Leetcode典型题解答和分析、归纳和汇总——T118(杨辉三角)

Leetcode典型题解答和分析、归纳和汇总——T118(杨辉三角)

问题分析:

本题我们采用动态规划方式来进行求解。即在计算当前的值时,利用上一层的保存值进行求解:row[i][j]= row[i-1][j]+row[i-1][j-1]。

class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> res(numRows);
        if (numRows == 0)return res;

        for (int i = 0; i < numRows; ++i) {  //i来表示行数
            for (int j = 0; j <= i; ++j) {  //j表示列数
                if (j == 0 || j == i)
                    res[i].push_back(1);
                else
                    res[i].push_back(res[i - 1][j - 1] + res[i - 1][j]);  //把上行+列值
            }
        }
        return res;
    }
};

 

Leetcode典型题解答和分析、归纳和汇总——T118(杨辉三角)Leetcode典型题解答和分析、归纳和汇总——T118(杨辉三角) 探索者FXJ 发布了96 篇原创文章 · 获赞 8 · 访问量 5676 私信 关注
上一篇:【一起刷LeetCode】Z 字形变换


下一篇:leetcode——6.Z字形变换