674. Longest Continuous Increasing Subsequence
Given an unsorted array of integers, find the length of longest continuous increasing subsequence (subarray).
Example 1:
Input: [1,3,5,4,7]
Output: 3
Explanation: The longest continuous increasing subsequence is [1,3,5], its length is 3.
Even though [1,3,5,7] is also an increasing subsequence, it's not a continuous one where 5 and 7 are separated by 4.
Example 2:
Input: [2,2,2,2,2]
Output: 1
Explanation: The longest continuous increasing subsequence is [2], its length is 1.
Note: Length of the array will not exceed 10,000.
思路:
直接遍历数组,如果后面的大于前面的计数器就加一,然后再新建一个列表存储这些数值,最后输出最大值就行了,要注意的就是特殊情况,空列表或者只含一个元素的列表。
我的代码:
class Solution:
def findLengthOfLCIS(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
counter = 1
L = []
if len(nums)>=2:
for i in range(0,len(nums)-1):
if nums[i+1]>nums[i]:
counter+=1
else:
counter=1
L.append(counter)
return max(L)
elif len(nums)==1:
return 1
else:
return 0