classSolution{publicstaticintfindLengthOfLCIS(int[] nums){int[] dp =newint[nums.length];for(int i =0; i < dp.length; i++){
dp[i]=1;}int res =1;//可以注意到,這邊的 i 是從 0 開始,所以會出現和卡哥的C++ code有差異的地方,在一些地方會看到有 i + 1 的偏移。for(int i =0; i < nums.length -1; i++){if(nums[i +1]> nums[i]){
dp[i +1]= dp[i]+1;}
res = res > dp[i +1]? res : dp[i +1];}return res;}}
三、 718. 最长重复子数组
classSolution{publicintfindLength(int[] nums1,int[] nums2){int result =0;int[][] dp =newint[nums1.length +1][nums2.length +1];for(int i =1; i < nums1.length +1; i++){for(int j =1; j < nums2.length +1; j++){if(nums1[i -1]== nums2[j -1]){
dp[i][j]= dp[i -1][j -1]+1;
result =Math.max(result, dp[i][j]);}}}return result;}}