题意:打出帕斯卡三角形。
思路:简单模拟。
class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int> > p;
if(numRows == 0) return p;
vector<int> tp;
tp.push_back(1);
p.push_back(tp);
for(int i = 1; i < numRows; ++ i) {
vector<int> ttp;
ttp = p.back();
vector<int> temp;
for(int j = 0; j < ttp.size(); ++ j) {
if(j == 0) {
temp.push_back(1);
}
if(j + 1 < ttp.size()) {
temp.push_back(ttp[j] + ttp[j + 1]);
}
if(j + 1 == ttp.size()) {
temp.push_back(1);
}
}
p.push_back(temp);
}
return p;
}
};

本文介绍了一种使用C++实现帕斯卡三角形的方法。通过简单的模拟算法,该程序可以生成任意行数的帕斯卡三角形。适用于初学者理解和实践基本的数据结构和算法。
1038

被折叠的 条评论
为什么被折叠?



