function lengthOfLIS(nums) { if (nums.length === 0) return 0; const dp = new Array(nums.length).fill(1); // dp【i】代表nums[i]为结尾时的最大长度 for (let i = 1; i < nums.length; i++) { for (let j = 0; j < i; j++) { if (nums[j] < nums[i]) { dp[i] = Math.max(dp[i], dp[j] + 1); // 因为需要保持递增,i+1的值是否成立,会依赖i的。所以dp[i],需要保存nums[i]结尾的值 } } } return Math.max(...dp); // 返回dp数组的最大值 }
点赞 1

相关推荐

渴望wlb的牛油果很...:直说卡第一学历不就行了 非得拐弯抹角
点赞 评论 收藏
分享
東大沒有派對:这是好事啊(峰哥脸
我的秋招日记
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务