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?
java:
public class Solution {
public List<Integer> getRow(int rowIndex) {List<List<Integer>> result = new ArrayList<List<Integer>>();
List<Integer> inner= new ArrayList<Integer>();
if (rowIndex == 0) {
inner.add(1);
return inner;
}
inner.add(1);
result.add(inner);
for (int i = 2;i<=rowIndex+1;i++){
List<Integer> innera= new ArrayList<Integer>();
innera.add(1);
List<Integer> pre = result.get(i-2);
for(int j = 1; j< i-1;j++){
innera.add(pre.get(j-1)+pre.get(j));
}
innera.add(1);
result.add(innera);
}
return result.get(rowIndex);
}
}
本文介绍了一个高效的算法来获取帕斯卡三角形的第K行,并使用Java实现,该方法仅占用O(K)的额外空间。

2394

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



