news 2026/8/29 2:24:13

力扣718 最长重复子数组 java实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣718 最长重复子数组 java实现

718.最长重复子数组

给两个整数数组nums1nums2,返回两个数组中公共的、长度最长的子数组的长度

示例 1:

输入:nums1 = [1,2,3,2,1], nums2 = [3,2,1,4,7]输出:3解释:长度最长的公共子数组是 [3,2,1] 。

示例 2:

输入:nums1 = [0,0,0,0,0], nums2 = [0,0,0,0,0]输出:5

提示:

  • 1 <= nums1.length, nums2.length <= 1000
  • 0 <= nums1[i], nums2[i] <= 100

该题使用暴力解法明显时间复杂度较多,可以使用动态规划以空间换时间,定义动态规划数组dp[i][j] :以下标i - 1为结尾的nums1,和以下标j - 1为结尾的nums2,最长重复子数组长度为dp[i][j],两层循环遍历,若num1[i - 1] = nums2[j - 1] 则说明当前的nums1中的i - 1的位置和j - 1相同,在两者之前的长度上加一即可,例如nums1 = [1,2,3,2,1], nums2 = [3,2,1,4,7],i = 2,j = 2时, nums1[1] = nums[1] 在动态规划数组中说明在当前nums1的下标1位置和nums2的下标1相同,最长子序列只需在nums1的下标0和nums2的下表0的位置处的最长子数组加一即可,即dp[i][j] = dp[i - 1][j - 1] + 1

public static void main(String[] args) { // 测试用 int[] nums1 = {1,2,3,2,1}; int[] nums2 = {3,2,1,4,7}; System.out.println(findLength(nums1, nums2)); } public static int findLength(int[] nums1, int[] nums2) { int[][] dp = new int[nums1.length + 1][nums2.length + 1]; int res = 0; for (int i = 1; i <= nums1.length; i++) { for (int j = 1; j <= nums2.length; j++) { if (nums1[i - 1] == nums2[j - 1]){ dp[i][j] = dp[i - 1][j - 1] + 1; } res = Math.max(res, dp[i][j]); } } return res; }

以上为记录分享用,代码较差请见谅

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/25 9:41:51

跨境电商必看:Etsy保号防封全攻略(2026)

Etsy作为全球领先的手工艺品和创意商品销售平台&#xff0c;吸引了成千上万的卖家。但当你刚准备大干一场&#xff0c;Etsy新店24小时就封了&#xff1f;上架第一个产品&#xff0c;店直接没了&#xff1f;本文将带你了解常见的封号原因&#xff0c;并提供实操干货&#xff0c;…

作者头像 李华
网站建设 2026/8/28 14:18:51

自动禁用触控板工具支持winxp/win7/win8.1/win10

平时应该有朋友遇到过手不小心碰到触控板非常影响打字的体验&#xff0c;根本用上不&#xff0c;都是用鼠标&#xff0c;这个触控板就很鸡肋&#xff0c;如果要禁用&#xff0c;可以考虑使用这个工具。能禁用大部分的触控板&#xff0c;需要的保存试试。 下载地下载地址&#x…

作者头像 李华
网站建设 2026/8/24 13:44:51

IF=101.8首图激酶树

创建并分享人类激酶组树的交互式注释 人类激酶组数据的清晰可定制可视化 卖家秀 图片来源:S・哈里斯/施普林格自然有限公司 买家秀 Quantitative_CORAL.tree Text_Example3_advanced_kinmap 工具 Coral是款易用的交互式网络应用程序,可用于可视化定量与定性数据。与以往…

作者头像 李华
网站建设 2026/8/22 12:08:31

2026年EOR名义雇主服务TOP5精选,助力企业快速实现全球拓展

EOR名义雇主为企业提供灵活的解决方案&#xff0c;助力其在全球市场快速扩张。这种服务可以帮助企业应对复杂的法律法规&#xff0c;确保合规雇佣。这是因为EOR名义雇主承担了员工的法律责任&#xff0c;同时企业依然可以掌控业务运营。通过利用顶尖的服务商&#xff0c;企业能…

作者头像 李华
网站建设 2026/8/21 19:40:10

主流iPaaS平台解析:破解企业系统集成难题的关键路径

数字化转型步入深水区&#xff0c;企业正遭遇愈发棘手的集成难题&#xff1a;新旧系统交织、多云环境共生、数据孤岛凸显、业务流程断裂。iPaaS&#xff08;集成平台即服务&#xff09;凭借云原生、敏捷化、低代码的核心优势&#xff0c;成为企业搭建统一数字连接体系、助推业务…

作者头像 李华