LeetCode #674. Longest Continuous Increasing Subsequence

题目

674. Longest Continuous Increasing Subsequence


解题方法

设置一个rat记录返回值,一个count记录当前连续的数位个数,遍历数组,每一次遍历首先执行count++,如果nums[i] >= nums[i+1]的话,更新最大值rat,并将count置0。遍历结束需要额外再加一次count,因为遍历时忽略了最后一位,然后再更新一次最大值rat即可返回。
时间复杂度:O(n)
空间复杂度:O(1)


代码

class Solution:
    def findLengthOfLCIS(self, nums: List[int]) -> int:
        if not nums:
            return 0
        
        rat = 0
        count = 0
        
        for i in range(len(nums)-1):
            count += 1
            if nums[i] >= nums[i+1]:
                rat = max(rat, count)
                count = 0
        
        count += 1
        rat = max(rat, count)
        return rat
posted @ 2020-11-04 10:04  老鼠司令  阅读(76)  评论(0)    收藏  举报