原题链接:https://leetcode.com/problems/pascals-triangle/description/
题目大意:输入一个整数k,生成一个高度为k的杨辉三角
思路:依次生成每一层的数组即可,注意层次关系是res[row][i] = res[row-1][i-1] + res[row][i]
题解:
class Solution(object):
def generate(self, numRows):
"""
:type numRows: int
:rtype: List[List[int]]
"""
"""
Time Complexity:O(N^2)
Space Complexity:O(N^2)
"""
res = []
for row in range(numRows):
if not row:
res.append([1])
elif row == 1:
res.append([1, 1])
else:
tmp_list = []
for i in range(row + 1):
if i == 0 or i == row:
tmp_list.append(1)
else:
tmp_list.append(res[row-1][i-1] + res[row-1][i])
res.append(tmp_list)
return res

本文介绍了一种生成杨辉三角的算法实现,通过Python代码详细展示了如何根据输入的整数k生成高度为k的杨辉三角。算法的时间复杂度为O(N^2),空间复杂度也为O(N^2)。

4445

被折叠的 条评论
为什么被折叠?



