1、题目描述
2、题目分析
题目要求返回杨辉三角的某一行,需要将杨辉三角的某行的全部计算出来。
3、代码实现
1 vector<int> getRow(int rowIndex) { 2 3 if( rowIndex == 0 ) 4 return vector<int>(1,1); 5 6 vector<int>b{1,1}; 7 int n = 2; 8 while(n <= rowIndex){ 9 vector<int> r = calNextline(b); 10 b.resize( r.size() ); 11 for(int i = 0; i < r.size(); i++){ 12 b[i] = r[i]; 13 } 14 n++; 15 } 16 17 18 return b; 19 } 20 21 vector<int> calNextline( vector<int> v){ 22 if( v.size() < 2){ 23 return v; 24 } 25 26 vector<int> rv(v.size() + 1, 1); 27 28 for(int i = 0; i < v.size()-1; i++){ 29 rv[i+1] = v[i] + v[i+1]; 30 } 31 return rv; 32 } 33