1、双指针法
class Solution {
public:
int findLengthOfLCIS(vector<int>& nums) {
int max = 1;
int left, right;
for(left = 0; left < nums.size();){
int tempMax = 1;
for(right = left + 1; right < nums.size();){
if(nums[right] > nums[right - 1]){
right++;
tempMax++;
if(tempMax > max)
max = tempMax;
}
else break;
}
left = right;
}
return max;
}
};
2、动态规划
class Solution {
public:
int findLengthOfLCIS(vector<int>& nums) {
int max = 1;
vector<int> dp(nums.size(), 1);
for(int i = 1; i < nums.size(); i++){
if(nums[i] > nums[i - 1]){
dp[i] = dp[i - 1] + 1;
}
if(dp[i] > max)
max = dp[i];
}
return max;
}
};