【数组】118. 杨辉三角
题目:

解答:
杨辉三角即该位置的值为左上角与右上角的和,注释很清楚了(note for self数组初始化方法)。
1 class Solution { 2 public: 3 vector<vector<int>> generate(int numRows) 4 { 5 vector<vector<int>> ans(numRows); 6 if(numRows == 0) 7 { 8 return ans; //若numRows为空,返回空数组 9 } 10 11 // 给数组一个个赋值 12 for(int i = 0; i < numRows; ++ i ) 13 { 14 for(int j = 0; j <= i; ++ j) 15 { 16 // 若是左右两边的边界,赋值为1 17 if(j == 0 || j == i) 18 { 19 ans[i].push_back(1); 20 } 21 else 22 { 23 // 否则赋值为该位置左上与右上的和 24 ans[i].push_back(ans[i-1][j-1] + ans[i-1][j]); 25 } 26 } 27 } 28 return ans; 29 } 30 };

浙公网安备 33010602011771号