#左耳听风 ARST 打卡活动重启#
目录
关于 ARTS 的释义 —— 每周完成一个 ARTS:
● Algorithm: 每周至少做一个 LeetCode 的算法题
● Review: 阅读并点评至少一篇英文技术文章
● Tips: 学习至少一个技术技巧
● Share: 分享一篇有观点和思考的技术文章
希望通过此次活动能聚集一波热爱技术的人,延续好奇、探索、实践、分享的精神。
一、问题
二、解题方法一
def generate(numRows):
res = []
for i in range(numRows):
row = [1]
if res:
last_row = res[-1]
row.extend([sum(pair) for pair in zip(last_row, last_row[1:])])
row.append(1)
res.append(row)
return res
三、解题方法二
class Solution:
def generate(self, numRows):
if numRows == 0:
return []
dp = [[1] * numRows for _ in range(numRows)]
for i in range(2, numRows):
for j in range(1, i):
dp[i][j] = dp[i-1][j-1] + dp[i-1][j]
return list(map(list, zip(*dp)))
四、两种方法的区别