这篇文章主要介绍了java如何实现最长连续递增序列,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
给定一个未经排序的整数数组,找到最长且连续的的递增序列。
示例 1:
输入: [1,3,5,4,7]输出: 3解释: 最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。
示例 2:
输入: [2,2,2,2,2]输出: 1解释: 最长连续递增序列是 [2], 长度为1。
注意:数组长度不会超过10000。
标签:遍历
过程:
count为当前元素峰值,ans为最大峰值
初始化count = 1
从0位置开始遍历,遍历时根据前后元素状态判断是否递增,递增则count++,递减则count=1
如果count>ans,则更新ans
直到循环结束
时间复杂度:O(N)
class Solution { public int findLengthOfLCIS(int[] nums) { if(nums.length <= 1) return nums.length; int ans = 1; int count = 1; for(int i=0;i<nums.length-1;i++) { if(nums[i+1] > nums[i]) { count++; } else { count = 1; } ans = count > ans ? count : ans; } return ans; }}
感谢你能够认真阅读完这篇文章,希望小编分享的“java如何实现最长连续递增序列”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。