题目链接 : https://leetcode-cn.com/problems/pascals-triangle-ii/
题目描述:
给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
在杨辉三角中,每个数是它左上方和右上方的数的和。
示例:
输入: 3
输出: [1,3,3,1]
进阶:
你可以优化你的算法到 O(k) 空间复杂度吗?
思路:
跟上一题一样118. 杨辉三角,
模拟过程
代码:
def getRow(self, rowIndex: int) -> List[int]:
tmp = []
for _ in range(rowIndex + 1):
tmp.insert(0, 1)
for i in range(1, len(tmp) - 1):
tmp[i] = tmp[i] + tmp[i+1]
return tmp
java
class Solution {
public List<Integer> getRow(int rowIndex) {
List<Integer> tmp = new LinkedList<>();
for (int i = 0; i <= rowIndex; i++) {
tmp.add(0, 1);
for (int j = 1; j < tmp.size() - 1; j++)
tmp.set(j, tmp.get(j) + tmp.get(j + 1));
}
return tmp;
}
}