LeetCode674:最长连续递增序列

LeetCode674:最长连续递增序列

码农世界 2024-05-24 前端 68 次浏览 0个评论

题目描述

给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。

连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], …, nums[r - 1], nums[r]] 就是连续递增子序列。

代码

/*
    dp[i]:以下标i为结尾的连续递增的子序列长度为dp[i]。
    
    递推公式 
        if(nums[i]>nums[i-1]) dp[i] = dp[i-1] + 1;
    初始化
        dp[i] = 1
    遍历顺序
        for(int i=0;i
public:
    int findLengthOfLCIS(vector& nums) {
        if (nums.size() == 0) return 0;
        int result = 1;
        vector dp(nums.size(), 1);
        for (int i = 1; i < nums.size(); i++) {
            if (nums[i] > nums[i - 1])
                dp[i] = dp[i - 1] + 1;
        }
        return *max_element(dp.begin(), dp.end());
    }
};

转载请注明来自码农世界,本文标题:《LeetCode674:最长连续递增序列》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,68人围观)参与讨论

还没有评论,来说两句吧...

Top