
杨辉三角的规律
第 0 行:1
第 1 行:1, 1
第 2 行:1, 2, 1
第 3 行:1, 3, 3, 1
第 4 行:1, 4, 6, 4, 1
规律:
每一行的第一个和最后一个元素都是 1
中间元素 = 上一行左上 + 上一行右上
数学公式: triangleij=trianglei−1j−1+trianglei−1j
python
class Solution:
def generate(self, numRows: int) -> List[List[int]]:
# 数学公式: triangle[i][j]=triangle[i−1][j−1]+triangle[i−1][j]
triangle = []
for i in range(numRows):
# 每行元素个数,以及初始值(暂时的)
row = [1] * (i + 1) # 每行长度 = i+1
# 更新中间元素
for j in range(1, i):
row[j] = triangle[i-1][j-1] + triangle[i-1][j]
triangle.append(row)
return triangle