674. Longest Continuous Increasing Subsequence
题目
题目挺简单:找一个最长递增子串
我的代码
class Solution:
def findLengthOfLCIS(self, nums: List[int]) -> int:
if not nums:
return 0
i,result_li,row = 0,[],[nums[0]]
while i<len(nums)-1:
if nums[i]<nums[i+1]:
row.append(nums[i+1])
else:
result_li.append(len(row))
row=[nums[i+1]]
i+=1
result_li.append(len(row))
return max(result_li)
优秀代码
思路与我差不多,就是不存储信息,直接判断是否大于。
class Solution:
def findLengthOfLCIS(self, nums: 'List[int]') -> 'int':
"""
1,3,5,4,7 -> 3
2,2,2,2,2 -> 1
"""
if not nums:
return 0
curr_len = 1
max_len = 0
prev = nums[0]
for num in nums[1:]:
# print(f'num: {num}, prev: {prev}, curr_len: {curr_len}')
if num > prev:
curr_len += 1
else:
max_len = max(max_len, curr_len)
curr_len = 1
prev = num
max_len = max(max_len, curr_len)
return max_len