
输入: 5
输出:
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
m = n + 1
a2, a1
a2[0] = 0 + a[0]
a2[1] = a1[0] + a1[1]
a1[1,1]
a2[1] = a1[0] + a1[1]
a2[1,2,1]
# Python3
class Solution:
def generate(self, numRows: int) -> List[List[int]]:
if numRows == 0:
return []
if numRows == 1:
return [[1]]
if numRows == 2:
return [[1],[1,1]]
a1 = [1,1]
res = [[1],[1,1]]
for i in range(2, numRows):
a2 = [1]
for n in range(1, len(a1)):
# a2[n] = a1[n-1] + a1[n]
a2.append(a1[n-1] + a1[n])
# a2[len(a1)] = 1
a2.append(1)
res.append(a2)
a1 = a2
return res
// Java
class Solution {
public List<List<Integer>> generate(int numRows) {
if (numRows == 1) {
List<Integer> list = new List<>{{add(1);}};
return new List<List<Integer>>().add(list);
}
if (numRows == 2) {
List<Integer> list = new List<>{{add(1);}};
List<Integer> list2 = new List<>{{add(1);add(1);}};
return new List<List<Integer>>().add(list).add(list2);
}
}
}