力扣119:杨辉三角Ⅱ
力扣119:杨辉三角Ⅱ
- 题目
- 思路
- 代码
题目
给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。
思路
杨辉三角的规律:
- 第n行有n+1个数,n从0开始
- 每行的第一个数和最后一个数都是1。
- 除了第一行的数其他的数都是由它左上角和右上角的数相加得到的。
在有了这几个规律后我们就很好做的,就很简单的创造一个二维数组根据规律一个一个的赋值即可。
代码
class Solution {
public:vector<int> getRow(int rowIndex) {vector<vector<int>> vv(rowIndex+1);for(int i = 0 ;i<=rowIndex;i++){//每行有i+1个数vv[i].resize(i+1);//第一个和最后一个数都是1vv[i][0] = 1;vv[i][i] = 1;for(int j = 1;j < i ;j++){//每个数都是由上一行左上角和右上角的数相加得到的vv[i][j] = vv[i-1][j-1] + vv[i-1][j];}}return vv[rowIndex];}
};