Leetcode刷題日記(2020.06.03):最長連續遞增序列

題目描述如下:

 

這是一道簡單題目,思路如下:我們只需要判斷後一個元素是否大於前一個元素,如果是的,我們的計數器+1;如果不是,那麼我們在計數器和最大長度這個變量上進行取值分析,並且重置計數器爲1。

代碼如下:

 1 #!/usr/bin/env python
 2 # -*- coding: utf-8 -*-
 3 """
 4 # @Time : 2020/6/3 9:33 
 5 
 6 # @Author : ZFJ
 7 
 8 # @File : 最長連續遞增序列.py 
 9 
10 # @Software: PyCharm
11 """
12 
13 
14 class Solution(object):
15     def findLengthOfLCIS(self, nums):
16         """
17         版本1思想如下:
18         我們只需要判斷後一個元素是否大於前一個元素,如果是的,我們的計數器+1
19         如果不是,那麼我們在計數器和最大長度這個變量上進行取值分析,並且重置計數器爲1
20         :type nums: List[int]
21         :rtype: int
22         """
23         # 安全檢查
24         if not nums:
25             return 0
26         maxlen = 1
27         count = 1
28         # 注意越界問題
29         for i in range(len(nums) - 1):
30             if nums[i + 1] > nums[i]:
31                 count += 1
32             else:
33                 maxlen = max(maxlen, count)
34                 # 重置計數器
35                 count = 1
36         maxlen = max(maxlen, count)
37         return maxlen

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章