当前位置: 首页 > article >正文

最长连续递增序列

最长连续递增序列

描述 :

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

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

题目 :

LeetCode 674.最长连续递增序列 :

674. 最长连续递增序列

分析 :

为了方便演示,我们给个示例(1,3,5,4,7,8,9,2),则图示如下,题目要求找到最长的连续递增子序列。

可以看到,最长递增子序列为{4,7,8,9)所以应该返回 4。所以在遍历的时候,我们可以从第 2 个元素开始先定义[left,right]的区间来表示当前的递增区间,执行如下操作:

  • 如果当前遍历到的元素比它左边的那一个元素要严格大,right就增加
  • 否则就将left跳到right的起始位置,重新开始计算

解析 :

class Solution {
    public int findLengthOfLCIS(int[] nums) {
        int left = 0;
        int right = 0;
        int res = 0;
        while(right < nums.length){
            if(right > 0 && nums[right-1]>=nums[right]){
                left = right;
            }
            right++;
            res = Math.max(res,right-left);
        }
        return res;
    }
}

这期就到这里 , 下期见!


http://www.kler.cn/a/154031.html

相关文章:

  • 数据库基本概念学习笔记
  • 有限状态机(续)
  • 初识Linux · 信号处理 · 续
  • 蜀道山CTF<最高的山最长的河>出题记录
  • HuggingFace:基于YOLOv8的人脸检测模型
  • shell 100例
  • [学习记录]Node event loop 总结流程图
  • STL--位图的介绍与使用
  • 以热爱的态度对待生活,就是最自己的温柔
  • 软著项目推荐 深度学习疲劳驾驶检测 opencv python
  • 线程的状态
  • 详解原生Spring框架下的方法切入点表达式
  • 【IEEE出版|往届均已成功EI检索】2024年第四届消费电子与计算机工程国际学术会议(ICCECE 2024)
  • 智慧工地一体化解决方案(里程碑管理)源码
  • 背包9讲系列2-完全背包问题
  • 《论文阅读》DualGATs:用于对话中情绪识别的双图注意力网络
  • 正确理解MySQL的MVCC及实现原理
  • 八、Lua数组和迭代器
  • 【微软技术栈】数据并行和任务并行中的潜在缺陷
  • (Linux2.6内核)进程调度队列与切换
  • Wireshark使用详解
  • TCP 重传、滑动窗口、流量控制、拥塞控制
  • vue el-button 封装及使用
  • Course2-Week1-神经网络
  • 手写实现一个动态代理框架
  • Ubuntu 安装 MySQL8 配置、授权、备份、远程连接