美文网首页
Swift ~ 最长且连续的的递增序列

Swift ~ 最长且连续的的递增序列

作者: 派大星的博客 | 来源:发表于2019-02-15 17:06 被阅读0次

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

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

func findLengthOfLCIS(_ nums: [Int]) -> Int {
    if nums.count > 1 {
        var result = 0
        var tmp = 0
        for index in 0 ..< nums.count {
            tmp += 1
            if index + 1 == nums.count {continue}
            if nums[index] >= nums[index + 1] {
                if tmp > result {
                    result = max(tmp, result)
                }
                tmp = 0
            }
        }
        return max(result, tmp)
    }
    return nums.count
}

相关文章

网友评论

      本文标题:Swift ~ 最长且连续的的递增序列

      本文链接:https://www.haomeiwen.com/subject/edsmeqtx.html