118. 杨辉三角

  1. 题目链接

  2. 解题思路:不要被「形状」所迷惑,其实就是,第i行(从0开始),一共有i + 1个数,第一个数和最后一个数是1,其余的数是上一行,「相同位置」+「左边一个位置」。

  3. 代码

    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
    
posted @ 2024-12-26 14:45  ouyangxx  阅读(11)  评论(0)    收藏  举报