leetcode647 最长连续递增序列

leetcode647 Longest Continuous Increasing Subsequence

Posted by BY on January 7, 2019

前言

随机一题

正文

问题来源

本问题来自leetcode上的674题。

问题描述

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

示例 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。

分析:

func findLengthOfLCIS(nums []int) int {
    l := len(nums)
    if nil == nums || l == 0 {
        return 0
    }
    
    temp := 1
    max := 1
    for i := 1; i < l; i++ {
        if nums[i-1] < nums[i] {
            temp++
        } else {
            temp = 1
        }
        if temp > max {
            max = temp
        }
    }
    return max
}

总结:

结语

不要懒,多看多写。