Given an index k, return the kth row of the Pascal‘s triangle.
For example, given k = 3,
Return [1,3,3,1].
Note: Could you optimize your algorithm to use only O(k) extra space?
题目大意
给定一个索引k,返回第k行帕斯卡三角的数据。
难度系数:容易
实现
代码一次性通过。当然,我这个使用递归的做法,占用的空间会比较多,可以使用for循环来优化。
vector<int> getRow(int rowIndex)
{
vector<int> vi;
if (rowIndex == 0) {
vi.push_back(1);
}else {
std::vector<int> tempv = getRow(rowIndex - 1);
for (int i = 0; i < rowIndex+1; ++i) {
if (i == 0 || i == rowIndex) {
vi.push_back(1);
} else {
vi.push_back(tempv[i-1] + tempv[i]);
}
}
}
return vi;
}
LeetCode119——Pascal's Triangle II
原文地址:http://blog.csdn.net/booirror/article/details/43197963