leetcode hot100 118. 杨辉三角 easy 动态规划


杨辉三角的规律

第 0 行:[1]

第 1 行:[1, 1]

第 2 行:[1, 2, 1]

第 3 行:[1, 3, 3, 1]

第 4 行:[1, 4, 6, 4, 1]

规律:

每一行的第一个和最后一个元素都是 1

中间元素 = 上一行左上 + 上一行右上

数学公式: triangle[i][j]=triangle[i−1][j−1]+triangle[i−1][j]

python 复制代码
class Solution:
    def generate(self, numRows: int) -> List[List[int]]:

        # 数学公式: triangle[i][j]=triangle[i−1][j−1]+triangle[i−1][j]

        triangle = []

        for i in range(numRows):  

            # 每行元素个数,以及初始值(暂时的)
            row = [1] * (i + 1)  # 每行长度 = i+1

            # 更新中间元素
            for j in range(1, i):
                row[j] = triangle[i-1][j-1] + triangle[i-1][j]

            triangle.append(row)
        
        return triangle
相关推荐
水蓝烟雨1 小时前
2359. 找到离给定两个节点最近的节点
算法·leetcode
阿Y加油吧1 小时前
二刷动态规划经典题:从打家劫舍到完全平方数,Java 实现复盘与优化
leetcode
阿Y加油吧2 小时前
二刷 LeetCode:爬楼梯与杨辉三角,Java 实现复盘
java·算法·leetcode
凌波粒2 小时前
LeetCode--101. 对称二叉树(二叉树)
算法·leetcode·职场和发展
_深海凉_2 小时前
LeetCode热题100-二叉树的最大深度
算法·leetcode·职场和发展
_深海凉_2 小时前
LeetCode热题100-二叉树的直径
算法·leetcode·职场和发展
水蓝烟雨2 小时前
3373. 连接两棵树后最大目标节点数目 II
算法·leetcode
故事和你912 小时前
洛谷-【图论2-1】树6
开发语言·数据结构·c++·算法·深度优先·动态规划·图论
YL200404263 小时前
044二叉搜索树中第K小的元素
数据结构·leetcode
_深海凉_3 小时前
LeetCode热题100-对称二叉树
算法·leetcode·职场和发展