119. 杨辉三角 II
给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
在杨辉三角中,每个数是它左上方和右上方的数的和。
示例:
输入: 3
输出: [1,3,3,1]
进阶:
你可以优化你的算法到 O(k) 空间复杂度吗?
思路:本次所给rowIndex是从0开始计数的,空间复杂度为k,就每次处理后直接覆盖前一轮数据即可,从右向左处理可以避免前一轮数据没有使用完便被覆盖的场景。
class Solution {
public List<Integer> getRow(int rowIndex) {
List<Integer> cur=new ArrayList<>();
cur.add(1);
for(int rowNum=1;rowNum<=rowIndex;rowNum++)
{
cur.add(rowNum,1);
for(int i=rowNum-1;i>0;i--)
{
cur.set(i,cur.get(i-1)+cur.get(i));
}
}
return cur;
}
}