补充一个java版的 public static int[] lengthOfLIS(int[] nums) { int len=1, n=nums.length; if (n==0) return null; //表示 可能的最长子序列 int[] d = new int[n+1]; //表示 以该位置结尾的最长子序列长度 int dp[] = new int[n]; d[len] = nums[0]; dp[0] = len; for (int i = 1; i < n; i++) { if (nums[i]>d[len]) { d[++len] = nums[i]; dp[i] = len; } else { int l=1, r=len, pos=0; //pos为d数组中小于nums[i]的前一位 while (l<=r){ int mid = (l+r)>>1; if (d[mid]<nums> 0; i--) { if (dp[i]==j) d[j--] = nums[i]; } int[] res = new int[len]; System.arraycopy(d,1,res,0,len); return res; }</nums>
点赞

相关推荐

群星之怒:不是哥们,你就不好奇瘫痪三十年的老植物人是啥样的吗?
点赞 评论 收藏
分享
AAA专业长城贴瓷砖刘大爷:这样的简历我会直接丢进垃圾桶,花里胡哨的
点赞 评论 收藏
分享
牛客网
牛客企业服务