力扣题解(最长连续递增序列)

674. 最长连续递增序列

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

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

思路:

对于0到i位置,最长的连续递增子序列有可能是k到j的部分(k<j<i),或者m到i的位置(m<i),则可以利用双指针的思想,l表示当前递增子序列的开头,i表示结尾,当numi>numi-1的时候,则i++,表示i位置元素加入仍是递增子序列。当numi<=numi-1的时候,更新长度len,更新l=i,继续找下一个递增子序列。

复制代码
class Solution {
public:
    int findLengthOfLCIS(vector<int>& nums) {
       int l=0,len=0;
       int i=1;
       for(;i<nums.size();i++)
       {
        if(nums[i]>nums[i-1])
        {
             
        }
        else
        {
           len=max(len,i-l);
           l=i;
        }

       }
       len=max(len,i-l);
       return len;
    }
};
相关推荐
一去不复返的通信er4 小时前
力扣-图论-岛屿数量
算法·leetcode·图论
程序 代码狂人7 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
HDU-Dade8 小时前
【校招笔试真题】简要介绍 Self-Attention 的前沿算法
人工智能·算法
Xin7709 小时前
LeetCode 79. 单词搜索(DFS 回溯法)
leetcode
小郎君65810 小时前
Vue keep-alive 切标签后滚动位置回顶?因为 onDeactivated 里读到的 scrollTop 是 0
算法
邵奈一10 小时前
GPT-6.1 Terra速度是Sol的3倍,价格减半
算法
RaaS10010 小时前
Node.js Brotli RCE 漏洞自查指南:fetch、undici、axios 都在影响面,三分钟确认你的版本
人工智能·深度学习·算法
shehuiyuelaiyuehao11 小时前
算法56,重排链表
数据结构·算法·链表
qq_4523962311 小时前
第四篇:《索引原理与实战:B-tree、Hash、GIN、GiST、BRIN》
算法·哈希算法·gin