一:题目 二:上码 1:方法一贪心 class Solution { public:/**思路:1.贪心**/int findLengthOfLCIS(vector<int>& nums) {int ans = 1;int count = 1;for (int i = 1; i < nums.size(); i++) {if(nums[i] > nums[i-1]) {count++;}else{count = 1;//出现不连续的状态}if(count > ans) ans = count;}return ans;} }; 2:方法二 class Solution { public:/**思路:1.动态规划1>:确定dp数组以及下标的含义dp[j] 表示的是j之前且包括j的最长连续序列2>:确定dp数组的递推公式if(nums[j] > nums[j-1]) dp[j] = dp[j-1] + 1;if(nums[j] < nums[j-1]) dp[j] = 1;//这步也可以不写 反正 只要出现反例的话 我们就跳过了//那么再遇见增长的 其前面因为是跳过的所以其值为13>:确定dp数组的初始化初始化为14>:确定dp数组的遍历顺序从前往后 j需要j-1 5>:举例验证1 3 5 4 70 1 2 3 4初始化 1 1 1 1 1i=1 1 2 3 1 2**/int findLengthOfLCIS(vector<int>& nums) {vector<int>dp(nums.size(),1);for (int j = 1; j < nums.size(); j++) {if (nums[j] > nums[j-1]) dp[j] = dp[j-1] + 1;if (nums[j] < nums[j-1]) dp[j] = 1;}int ans = 0;for (auto nums:dp) {ans = max(nums,ans);}return ans;} };