杨辉三角

🎯 问题描述(来源于LeetCode)

给定一个非负整数 _numRows,_生成「杨辉三角」的前 numRows 行。
杨辉三角中,每个数是它左上方和右上方的数的和。

💻 代码实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Solution:
def generate(self, numRows: int) -> List[List[int]]:
n=numRows
L = []
for i in range(n):
line=[]
for j in range(i+1):
if j==0 or i==j:
line.append(1)
else :
a=L[i-1][j-1]+L[i-1][j]
line.append(a)
L.append(line)
return L

📊 性能分析

提交结果

  • 运行时间:0ms击败100.00%
  • 内存消耗:17.49MB击败50.63%

复杂度验证

  • 时间复杂度:O(n2)O(n^2)
  • 空间复杂度:O(n2)O(n^2)