1,题目要求
Given an unsorted array of integers, find the length of longest continuous increasing subsequence (subarray).
找到一个连续的最长递增子序列。
2,题目思路
还是利用了动态规划的基本思想。动态去依次寻找最长的递增子序列。设置一个count变量来记录每次满足递增条件的子序列的长度,然后利用maxLen变量来记录查找到某个数字时可以实现的最长的序列长度。
3,程序源码
class Solution {
public:
int findLengthOfLCIS(vector<int>& nums) {
if(nums.size()==0)
return 0;
int maxLen = 1;
int minNum = nums[0];
int count = 1;
for(int i=1;i<nums.size();i++)
{
if(nums[i]>nums[i-1])
{
count ++;
maxLen = max(count, maxLen);
}
else
{
count = 1;//对长度进行重置
}
}
return maxLen;
}
};

本文介绍了一种求解最长连续递增子序列的方法。利用动态规划的思想,通过遍历整数数组,设置变量记录递增子序列长度,并更新最大长度。适用于未排序的整数数组。

1万+

被折叠的 条评论
为什么被折叠?



