力扣刷题记录#数组#简单#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。

解答

class Solution(object):
    def findLengthOfLCIS(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        length = len(nums)
        
        if length<=1:
            return length
        
        max_len = 1   # 记录最大长度
        cur_len = 1   # 记录当前连续递增序列长度
        for i in range(1,length):
            if nums[i]>nums[i-1]:    # 满足递增条件
                cur_len += 1
            else:  
                cur_len = 1     # 不满足递增条件,重置cur_len
                
            if cur_len>max_len:
                max_len = cur_len
                
        return max_len

你可能感兴趣的:(力扣)