给定一个索引 k,返回帕斯卡三角形(杨辉三角)的第 k 行。

例如,给定 k = 3,

则返回 [1, 3, 3, 1]。

注:

你可以优化你的算法到 O(k) 的空间复杂度吗?

详见:https://leetcode.com/problems/pascals-triangle-ii/description/

Java实现:



class Solution {
public List<Integer> getRow(int rowIndex) {
List<Integer> res = new ArrayList<>();
//ArrayList中的set(index, object)和add(index, object)的区别:set:将原来index位置上的object的替换掉;add:将原来index位置上的object向后移动
for (int i = 0; i <= rowIndex; ++i) {
res.add(0, 1);
for (int j = 1; j < res.size() - 1; ++j) {
res.set(j, res.get(j) + res.get(j + 1));
}
}
return res;
}
}