LeetCode674:最长连续递增序列

题目链接:674. 最长连续递增序列 - 力扣(LeetCode)

代码如下

复制代码
class Solution {
public:
    int findLengthOfLCIS(vector<int>& nums) {
        //dp[i] 是 以i为结尾的最大连续递增子序列
        //递推公式dp[i] = dp[i - 1] + 1;
        int len = nums.size();
        if(len <= 1)    return len;
        vector<int> dp(len + 1, 1);
        int result = 0;
        dp[0] = 1;
        for(int i = 1; i < len; i++)
        {
            if(nums[i] > nums[i - 1])
                dp[i] = dp[i - 1] + 1;
            if(dp[i] > result)
                result = dp[i];
        }
        
        return result;
    }
};

这个题目其实很好理解,只需要一个for循环就好,因为上一个不连续的需要两层for循环是因为需要有一个参数去在0-i的区间寻找最大值,这个就不需要,递推公式也只需要一个就好。初始化还是1就好

相关推荐
疯狂的喵1 小时前
C++编译期多态实现
开发语言·c++·算法
scx201310041 小时前
20260129LCA总结
算法·深度优先·图论
2301_765703141 小时前
C++中的协程编程
开发语言·c++·算法
m0_748708051 小时前
实时数据压缩库
开发语言·c++·算法
小魏每天都学习1 小时前
【算法——c/c++]
c语言·c++·算法
智码未来学堂2 小时前
探秘 C 语言算法之枚举:解锁解题新思路
c语言·数据结构·算法
Halo_tjn2 小时前
基于封装的专项 知识点
java·前端·python·算法
春日见2 小时前
如何避免代码冲突,拉取分支
linux·人工智能·算法·机器学习·自动驾驶
副露のmagic2 小时前
更弱智的算法学习 day59
算法
u0109272713 小时前
C++中的RAII技术深入
开发语言·c++·算法