Leetcode 118. 杨辉三角

心路历程:

其实最直观的想法是可以直接按照从上到下的顺序遍历数组,依次计算数组的值即可,相当于DP表格的初始化。

但是也可以从递归的角度进行思考,@cache yyds。

注意的点:

1、注意第二层循环col应该是[0, line+1)

解法:动态规划

python 复制代码
class Solution:
    def generate(self, numRows: int) -> List[List[int]]:
        @cache
        def dp(i, j): # 返回第i行,第j个元素的值
            if i == 0: return 1
            if j == 0 or j == i: return 1
            return dp(i-1, j-1) + dp(i-1, j)
        res = []
        for line in range(numRows):
            temp = []
            for col in range(line+1):  # 第二层循环注意别写错了
                temp.append(dp(line, col))
            res.append(temp)
        return res
相关推荐
字节高级特工7 分钟前
智能指针原理与使用场景全解析
开发语言·c++·算法
珊瑚里的鱼8 分钟前
【动态规划】买卖股票的最佳时机Ⅲ
算法·动态规划
逻辑星辰14 分钟前
x-ds-pow-response逆向分析
开发语言·人工智能·python·深度学习·算法
CQU_JIAKE23 分钟前
6.9【aAAA]
算法
Lewiis28 分钟前
白话桶排序
数据结构·算法·golang·排序算法
非生而知之者31 分钟前
基于灰狼算法优化的电量预测
python·算法·群体智能算法·电力预测
ywl47081208735 分钟前
‌HashMap 1.8 的扩容机制(Resize)‌
算法·哈希算法
_Evan_Yao40 分钟前
递归函数入门:以阶乘和斐波那契数列为例
python·学习·算法
DFT计算杂谈1 小时前
WannierTools输入文件wt.in一键批量生成脚本
java·前端·chrome·python·算法·conda
叫我:松哥1 小时前
基于卷积神经网络的人脸情绪识别算法,引入残差连接与SE注意力模块
人工智能·深度学习·神经网络·算法·cnn·迁移学习·图像识别