您的位置:首页 > 其它

118. Pascal's Triangle 难度:easy

2017-01-07 12:44 302 查看
题目:

Given numRows, generate the first numRows of Pascal's triangle.

For example, given numRows = 5,

Return
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]


思路:

每一层的第i个位置,等于上一层第i-1与第i个位置之和。

程序:

class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int> > ret;
if(numRows == 0)
return ret;

vector<int> last(1,1);
ret.push_back(last);
for(int i = 2; i <= numRows; i ++)
{
last.push_back(0);
vector<int> cur = last;
for(int j = 1; j < i; j ++)
{
cur[j] = last[j] + last[j-1];
}
ret.push_back(cur);
last = cur;
}
return ret;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: