1 vector<vector<int> > generate(int numRows) { 2 int i,j; 3 vector<vector<int> > intVV; 4 vector<int> intV; 5 if(numRows<=0) 6 //return NULL;//Compile Error:could not convert '0' from 'int' to 'std::vector<std::vector<int> >' 7 return intVV; 8 intV[0].push_back(1); 9 intVV[0].push_back(intV[0]); 10 for(i=1;i<n;++i){ 11 intV[0].push_back(1);//开始的1在这里添加 12 for(j=1;j<i;++j){ 13 intV[j].push_back(intVV[i-1][j-1]+intVV[i-1][j]); 14 } 15 intV[j-1].push_back(1);//最后的1在这里添加 16 intVV[i].push_back(intV[j]); 17 } 18 return intVV; 19 }
编译错误,我不会操作二维向量
就凭着出错信息和感觉改呀改,最后AC了,但还是不会二维向量,找个时间看看
1 vector<vector<int> > generate(int numRows) { 2 int i,j; 3 vector<vector<int> > intVV; 4 vector<int> intV; 5 if(numRows<=0) 6 //return NULL;//Compile Error:could not convert '0' from 'int' to 'std::vector<std::vector<int> >' 7 return intVV; 8 intV.push_back(1); 9 intVV.push_back(intV); 10 intV.clear(); 11 for(i=1;i<numRows;++i){ 12 intV.push_back(1);//开始的1在这里添加 13 for(j=1;j<i;++j){ 14 intV.push_back(intVV[i-1][j-1]+intVV[i-1][j]); 15 } 16 intV.push_back(1);//最后的1在这里添加 17 intVV.push_back(intV); 18 intV.clear(); 19 } 20 return intVV; 21 }