給定一個非負整數numRows,生成楊輝三角的前numRows行,
示例:
?輸入:numRows = 5
?輸出:[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
思路:
楊輝三角,相信大家都不陌生,楊輝三角第一行有一個數字,依次往下每一行的數字比上一行的多一個,每一行的第一個和最后一個數為1,其余數等于其左上方的數和正上方的數之和,

據此,我們使用vector容器可以很容易解決該問題,
代碼如下:
class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int>> v(numRows); //開辟可存盤numRows個vector<int>的vector容器
for (int i = 0; i < numRows; i++) //對這numRows個vector容器依次賦值
{
v[i].resize(i + 1); //第i個vector容器需要存盤i+1個整型
v[i][0] = v[i][i] = 1; //第一個數和最后一個數為1
for (int j = 1; j < i; j++) //其余數等于其左上方和左上方的兩個數之和
{
v[i][j] = v[i - 1][j - 1] + v[i - 1][j];
}
}
return v; //回傳numRows行的楊輝三角
}
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/297181.html
標籤:其他
上一篇:部署https證書的埠是什么意思
下一篇:20210901
