-
解题思路:不要被「形状」所迷惑,其实就是,第
i
行(从0开始),一共有i + 1
个数,第一个数和最后一个数是1,其余的数是上一行,「相同位置」+「左边一个位置」。 -
代码
class Solution: def generate(self, numRows: int) -> List[List[int]]: ans = [] for i in range(numRows): tmp = [] for j in range(i + 1): if j == 0 or j == i: tmp.append(1) else: tmp.append(ans[i - 1][j] + ans[i - 1][j - 1]) ans.append(copy.copy(tmp)) return ans