LeetCode算法题-Longest Continuous Increasing Subsequence(Java实现)

30天Python入门(第一天:Python入门) 30天带你入门Python,这是第一天 阅读详情

这是悦乐书的第286次更新,第303篇原创

01 看题和准备

今天介绍的是LeetCode算法题中Easy级别的第154题(顺位题号是674)。给定未排序的整数数组,找到最长连续增加子序列的长度。例如:

输入:[1,3,5,4,7]
输出:3
说明:最长的连续增加子序列为[1,3,5],其长度为3,即使[1,3,5,7]也是一个增加的子序列,它不是一个连续的,其中5和7被4分开。


输入:[2,2,2,2,2]
输出:1
说明:最长连续增加子序列为[2],其长度为1。

注意:数组长度不超过10,000。

本次解题使用的开发工具是eclipse,jdk使用的版本是1.8,环境是win7 64位系统,使用Java语言编写和测试。

02 第一种解法

要想找最长的连续递增子数组,肯定是要遍历数组。首先要处理下特殊情况,如果数组为null或者没有任何元素,直接返回0。接着定义一个最大值的临时变量,开始循环遍历数组元素,如果有连续的递增子数组,就一直在另一个循环中处理,如果不满足就跳出循环,任何判断最大值,最后返回最大值。

public int findLengthOfLCIS(int[] nums) {
    if (nums == null || nums.length < 1) {
        return 0;
    }
    int max = 1;
    for (int i=0; i<nums.length; i++) {
        int count = 1;
        while (i+1 < nums.length && nums[i] < nums[i+1]) {
            count++;
            i++;
        }
        max = Math.max(count, max);
    }
    return max;
}

03 第二种解法

还可以对第一种解法再优化下,内部不再使用循环,直接判断最大值,如果不满足递增的条件,就将count重置为1。

public int findLengthOfLCIS(int[] nums) {
    if (nums == null || nums.length < 1) {
        return 0;
    }
    int max = 0;
    int count = 0;
    for (int i=0; i<nums.length; i++) {
        if (i == 0 || nums[i] > nums[i-1]) {
            count++;
            max = Math.max(max, count);
        } else {
            count = 1;
        }
    }
    return max;
}

04 小结

算法专题目前已日更超过四个月,算法题文章154+篇,公众号对话框回复【数据结构与算法】、【算法】、【数据结构】中的任一关键词,获取系列文章合集。

以上就是全部内容,如果大家有什么好的解法思路、建议或者其他问题,可以下方留言交流,点赞、留言、转发就是对我最大的回报和支持!

Fiori Elements 表格之 Tree Tables:从数据建模到交互行为的全链路剖析 SAP Fiori elements的Tree Table组件将分层数据以表格形式展示,支持展开/折叠操作,适用于组织结构、物料清单等多级数据场景。该组件在List Report和Object Page中均可使用,支持懒加载、多选、列冻结等标准表格功能,并与OData V4服务层级注解深度集成。后端需通过RAP或CAP建模提供层级数据,前端通过清单配置切换表类型。需注意在草稿模式下仅显示活动实体,且展开状态在编辑时不保留。性能方面建议采用懒加载策略,避免全量加载树节点。 阅读详情

相关推荐

无限维李代数局部与2-局部1/2-导子:从概念到Witt代数实例解析

在抽象代数与数学物理中,李代数是描述对称性的基本结构,而导子则是刻画其微分性质的核心算子。从经典的导子概念出发,通过引入“局部”与“分数阶”两个关键推广,形成了局部导子、2-局部导子以及1/2-导子等重要研究方向。这些推广不仅深化了对无限维李代数(如Witt代数、Virasoro代数)复杂结构的理解,其研究方法和结论也为共形场论、可积系统等物理理论提供了数学基础。本文聚焦于无限维李代数上局部与2-局部1/2-导子的系统研究,通过拆解核心概念、剖析典型代数结构,并以Witt代数为实例,详细演示了从全局1/2-

weixin_34072296的博客 392

674. Longest Continuous Increasing Subsequence(Java)

Given an unsorted array of integers, find the length of longest continuous increasing subsequence.Example 1:Input: [1,3,5,4,7] Output: 3 Explanation: The longest continuous increasing subsequence is [1

离镜的博客 375

Vitis 安装及环境配置

Vitis 官方手册 https://www.xilinx.com/html_docs/xilinx2020_1/vitis_doc/index.html Xilinx Downloads center https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vitis.html 系统要求如下图所示,Windows系统只能支持Vitis嵌入式系统开发流程,不能支持加速设计 1.安装ubuntu18.0

怠桑的博客 7052

leetcode 674. Longest Continuous Increasing Subsequence 最长递增连续子序列

Given an unsorted array of integers, find the length of longest continuous increasing subsequence (subarray). Example 1: Input: [1,3,5,4,7] Output: 3 Explanation: The longest continuous increasing...

JackZhangNJU的专栏 381

ElementUI中的el-table解决宽度问题 - 根据内容自动撑开

在使用element-ui中,会发现表格组件el-table在未指定宽度情况下,会自动计算并给表格宽度赋值。但实际开发中,有时需要根据内容实际长度自动撑开显示,由内容的多少而决定表格的宽度,而不是默认宽度为100%。在默认情况下表格宽度为100%显示,并且列项未指定宽度情况下,剩余部分会平均分配宽度,本案例实际需求是由内容自动撑开显示。componentUpdated

觉醒法师的专栏 1万+

Windows版MySQL8.4.2LTS解压直用(下载免安装-绿色-项目打包直接使用-含卸载)

安装前运行微软常用运行库全集(也可能称为依赖)关于MySQL8中相关参数配置,可通过。选择8.5.2LTS长期服务版。选中密码,右键会直接复制。

xzzteach的博客 1442

Leetcode665 (Array) Non-decreasing Array +Leetcode674 Longest Continuous Increasing Subsequence

Given an array with n integers, your task is to check if it could become non-decreasing by modifying at most 1 element. We define an array is non-decreasing if array[i]  holds for every i (1

三笔竹林的博客 324

Vue3实战:企业级应用集成钉钉扫码登录全流程解析

本文详细解析了在Vue3企业级应用中集成钉钉扫码登录的全流程。从钉钉开放平台应用创建与配置,到Vue3前端如何优雅地嵌入并管理扫码组件,再到后端如何安全地处理OAuth 2.0授权码以换取用户信息并完成登录,提供了完整的实战代码与避坑指南。该方案能有效实现安全便捷的单点登录,统一企业身份认证。

weixin_29019241的博客 292

LeetCode674. Longest Continuous Increasing Subsequence

LeetCode674. Longest Continuous Increasing Subsequence 题目:Given an unsorted array of integers, find the length of longest continuous increasing subsequence. Example 1: Input: [1,3,5,4,7]

mohuak的博客 293

kettle从入门到精通 第九十二课 ETL之kettle 使用Kettle的Carte对外发布读写接口

场景:使用kettle实现将查询结果返回给客户端,也就是说kettle暴露查询接口供外围系统调用。前提必须是使用carte服务才可以提供接口供外部系统调用。具体实操方法如下:1、设计转换根据具体需求设计转换,主要用到的步骤有获取变量(从请求参数中获取变量)、json输入(解析入参),json 输出将结果转换为json格式输出到客户端。如下图所示:2、接收参数使用获取变量步骤来接收接口请求参数,变量通过${}方法进行获取,如下图${PARAM}则是获取PARAM参数,将参数赋值为req字段。

zhangjin1222的博客 955

PCL 计算点云AABB包围盒的体积【2026最新版】

AABB包围盒又称了 轴对齐包围盒,是点云包围盒里最简单的一种,其计算方法也极其简单。获取包围盒之后,根据包围盒的长宽高进行体积计算即可!博客长期更新,本文最近一次更新时间为:2026年5月3日。

点云侠的博客 2295

674. Longest Continuous Increasing Subsequence

原题 题目描述:返回数组中最大连续递增序列的元素个数 思路:定义一个计数器,当数组中后一个元素比前一个元素大,计数器自增长,同时定义一个最大长度变量,和计数器每次取较大的那个,当然若不是递增,则把计数器重置为1 class Solution { public int findLengthOfLCIS(int[] nums) { if(nums.length==0...

没有对象也没有new方法的大白 201

生成模型实战 | MuseGAN详解与实现

人工智能音乐生成领域已引起了广泛关注,MuseGAN 是其中一个重要的模型。本节我们将使用 JSB Chorales 数据集来训练 MuseGAN,该数据集包含巴赫创作的四音轨合唱曲。在生成图像时,生成器使用的是来自潜在空间的单一噪声向量来生成不同格式的内容;而在 MuseGAN 中,生成器将使用四个噪声向量来生成一段音乐,旨在增强音乐生成过程中的可控行和多样性。每个噪声向量代表音乐的不同方面,通过单独调整这些向量,模型可以生成更复杂、更细腻的音乐作品。

盼小辉丶的博客 6608

Day 52 | 300. Longest Increasing Subsequence | 674. Longest Continuous Increasing Subsequence | 718.

Day 52 | 300. Longest Increasing Subsequence | 674. Longest Continuous Increasing Subsequence | 718. Maximum Length of Repeated Subarray

KKKKKKyle的博客 263

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

[leetcode]最长连续递增序列(Longest Continuous Increasing Subsequence)

最长连续递增序列(Longest Continuous Increasing Subsequence) 给定一个未经排序的整数数组,找到最长且连续的的递增序列。 示例 1: 输入: [1,3,5,4,7] 输出: 3 解释: 最长连续递增序列是 [1,3,5], 长度为3。 尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。 示例 2: ...

gcn_Raymond的博客 443

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Longest Continuous Increasing Subsequence II

Given an integer matrix. Find the longest increasing continuous subsequence in this matrix and return the length of it. The longest increasing continuous subsequence here can start at any position an...

leetcode 解题思路 273

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

LeetCode 674. Longest Continuous Increasing Subsequence--python,Java,C++解法

LeetCode 674. Longest Continuous Increasing Subsequence LeetCode题解专栏:LeetCode题解 我做的所有的LeetCode的题目都放在这个专栏里,大部分题目Java和Python的解法都有。 此题链接;Longest Continuous Increasing Subsequence - LeetCode Given an u...

个人博客 500

Java描述 LeetCode,674. Longest Continuous Increasing Subsequence

大家好,我是河海哥,专注于后端,如果可以的话,想做一名code designer而不是普通的coder,一起见证河海哥的成长,您的评论与赞是我的最大动力。 1-1:题目 Given an unsorted array of integers nums, return the length of the longest continuous increasing subsequence (i.e. subarray). The subsequence must be strictly increasing.

人在江湖 377

【Leetcode】674. Longest Continuous Increasing Subsequence

题目地址: https://leetcode.com/problems/longest-continuous-increasing-subsequence/ 给定一个数组,求其最长连续上升子序列的长度。可以应用动态规划思想。设f[i]f[i]f[i]为以nums[i]nums[i]nums[i]结尾的最长的连续上升子序列的长度。那么这个子序列有两种情况: 1、如果nums[i]>nums[i...

数学、算法爱好者的博客 157

LeetCode 674.Longest Continuous Increasing Subsequence

Given an unsorted array of integers, find the length of longest continuous increasing subsequence (subarray). Example 1: Input: [1,3,5,4,7] Output: 3 Explanation: The longest continuous increasing ...

wuqingdeqing的博客 251

LeetCode - 268. Missing Number & 674. Longest Continuous Increasing Subsequence

LeetCode - 268. Missing Number &amp; 674. Longest Continuous Increasing Subsequence LeetCode - 268. Missing Number LeetCode - 674. Longest Continuous Increasing Subsequence LeetCode - 268. Missing...

zxzxin的博客~ 323

LeetCode-Longest Continuous Increasing Subsequence

LeetCode Java Longest Continuous Increasing Subsequence

坟头草一米七五 274

LeetCode 674. Longest Continuous Increasing Subsequence(java)

Given an unsorted array of integers, find the length of longest continuous increasing subsequence (subarray).Example 1: Input: [1,3,5,4,7] Output: 3 Explanation: The longest continuous increasing subse

katrina95的博客 425

leetcode674-Longest Continuous Increasing Subsequence

连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], …这道题目直接遍历就可以解,一个哨兵记录当前连续递增子数组的长,如果下个元素比当前元素大那么哨兵加1,如果下个元素比当前元素小,那么更新哨兵元素,并且取哨兵元素和最终递增子数组的最大值。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为 5 和 7 在原数组里被 4 隔开。

我的程序人生 348

LeetCode Longest Continuous Increasing Subsequence

原题链接在这里:https://leetcode.com/problems/longest-continuous-increasing-subsequence/description/ 题目: Given an unsorted array of integers, find the length of longestcontinuousincreasing subsequence. E...

weixin_30448685的博客 87

[LeetCode]Longest Continuous Increasing Subsequence 最长连续增长序列

链接:https://leetcode.com/problems/longest-continuous-increasing-subsequence/description/ 难度:Easy 题目:674. Longest Continuous Increasing Subsequence Given an unsorted array of intege...

尾尾部落 215
上一篇: LeetCode算法题-Second Minimum Node In a Binary Tree(Java实现)
下一篇: LeetCode算法题-Valid Palindrome II(Java实现)
程序员小川
博客等级 码龄10年 47粉丝 305原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值