第九章 动态规划part13

300. 最长递增子序列

python 复制代码
class Solution:
    def lengthOfLIS(self, nums: List[int]) -> int:
        n = len(nums)
        dp = [1] * n
        for i in range(n):
            for j in range(i):
                if nums[j] < nums[i]:
                    dp[i] = max(dp[j]+1,dp[i])
        return max(dp)

674. 最长连续递增序列

python 复制代码
class Solution:
    def findLengthOfLCIS(self, nums: List[int]) -> int:
        n = len(nums)
        dp = [1] * n
        for i in range(1,n):
            if nums[i] > nums[i-1]:
                dp[i] = max(dp[i-1]+1,dp[i])
        return max(dp)

718. 最长重复子数组

python 复制代码
class Solution:
    def findLength(self, nums1: List[int], nums2: List[int]) -> int:
        n = len(nums1)
        m = len(nums2)
        result = 0
        dp = [[0]*(m+1) for _ in range(n+1)]
        for i in range(1,n+1):
            for j in range(1,m+1):
                if nums1[i-1] == nums2[j-1]:
                    dp[i][j] = dp[i-1][j-1] + 1
                if result < dp[i][j]:
                    result = dp[i][j]
        return result
相关推荐
threejs源码翻译官3 分钟前
显微镜图像处理【优化】- 使用图像风格迁移技术放大图像细节
算法
强德亨上校30 分钟前
贪心算法(Greedy Algorithm)详解
算法·贪心算法
浮灯Foden2 小时前
算法-每日一题(DAY13)两数之和
开发语言·数据结构·c++·算法·leetcode·面试·散列表
西工程小巴2 小时前
实践笔记-VSCode与IDE同步问题解决指南;程序总是进入中断服务程序。
c语言·算法·嵌入式
Tina学编程2 小时前
48Days-Day19 | ISBN号,kotori和迷宫,矩阵最长递增路径
java·算法
Moonbit3 小时前
MoonBit Perals Vol.06: MoonBit 与 LLVM 共舞 (上):编译前端实现
后端·算法·编程语言
百度Geek说4 小时前
第一!百度智能云领跑视觉大模型赛道
算法
big_eleven4 小时前
轻松掌握数据结构:二叉树
后端·算法·面试
big_eleven4 小时前
轻松掌握数据结构:二叉查找树
后端·算法·面试
CoovallyAIHub4 小时前
农田扫描提速37%!基于检测置信度的无人机“智能抽查”路径规划,Coovally一键加速模型落地
深度学习·算法·计算机视觉