当前位置: 首页 > wzjs >正文

商城型网站开发网站建设googleplay官网

商城型网站开发网站建设,googleplay官网,小程序导航wordpress,php政府网站系统目录 解法一:利用 Set 特性高效去重 解法二:双重遍历与 Set 去重 方法对比与总结 关键点总结 题目描述 给定两个整数数组 nums1 和 nums2,要求返回它们的交集。输出结果中的每个元素必须是唯一的,且顺序不限。 示例 输入&…

目录

解法一:利用 Set 特性高效去重

解法二:双重遍历与 Set 去重

方法对比与总结

关键点总结


题目描述
给定两个整数数组 nums1 和 nums2,要求返回它们的交集。输出结果中的每个元素必须是唯一的,且顺序不限。

示例

  • 输入:nums1 = [1,2,2,1], nums2 = [2,2]
    输出:[2]

  • 输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]
    输出:[9,4] 或 [4,9]


解法一:利用 Set 特性高效去重

思路

  1. 将 nums1 转换为 Set 结构,自动去重。

  2. 遍历 nums2,检查元素是否存在于 Set 中:

    • 若存在,则将该元素加入结果数组,并从 Set 中删除,避免后续重复匹配。

  3. 最终返回结果数组。

代码实现

var intersection = function(nums1, nums2) {const st = new Set(nums1);const ans = [];for (const x of nums2) {if (st.delete(x)) { // 如果元素存在,删除并收集ans.push(x);}}return ans;
};

复杂度分析

  • 时间复杂度:O(m + n),其中 m 和 n 是数组长度。
    转换 nums1 为 Set 需要 O(m),遍历 nums2 需要 O(n)。

  • 空间复杂度:O(m),用于存储 Set

优势

  • 高效处理重复元素:通过 st.delete(x) 确保每个元素只匹配一次。

  • 线性时间复杂度,适合处理大数据量。


解法二:双重遍历与 Set 去重

思路

  1. 遍历 nums1,对每个元素检查是否存在于 nums2 中。

  2. 若存在,则将其加入 Set 自动去重。

  3. 最终将 Set 转为数组返回。

代码实现

var intersection = function(nums1, nums2) {let set = new Set();for (let i = 0; i < nums1.length; i++) {if (nums2.includes(nums1[i])) {set.add(nums1[i]);}}return Array.from(set);
};

复杂度分析

  • 时间复杂度:O(m × n),最坏情况下需遍历 nums2 的每个元素。

  • 空间复杂度:O(k),k 为交集元素的数量。

缺点

  • nums2.includes() 的时间复杂度为 O(n),当数组较大时性能较差。


方法对比与总结

特性解法一(Set + 删除)解法二(双重遍历 + Set)
时间复杂度O(m + n)O(m × n)
空间复杂度O(m)O(k)
处理重复元素立即删除,避免重复匹配依赖 Set 去重
适用场景大数据量小数据量或简单场景

推荐解法
优先选择解法一,因为它利用 Set 的高效查找和删除操作,时间复杂度更低,尤其适合处理大规模数据。解法二虽然代码更直观,但性能较差,仅在数据量较小时适用。


关键点总结

  1. 去重机制:使用 Set 结构天然去重。

  2. 性能优化:通过删除已匹配元素减少重复检查。

  3. 方法选择:根据数据规模选择时间复杂度更优的解法。

http://www.dtcms.com/wzjs/34292.html

相关文章:

  • 广东省疫情最新消息今天百度快速seo优化
  • 广州东圃网站建设公司小说关键词自动生成器
  • 网站怎样做推广计划新产品推广
  • 龙腾盛世网站建设广州企业推广
  • 工业信息化部网站备查询新手怎么做网页
  • 做网站怎么找优质客户广州疫情升级
  • 大连python培训深圳知名网络优化公司
  • 网站建设修改教程视频手机清理优化软件排名
  • 潍坊哪里做网站网络营销的10个特点
  • 网站打开慢如何优化如何优化搜索引擎
  • 做视频网站用什么格式好金华百度seo
  • 外贸网站推广公司最大南京网站设计公司大全
  • 哪个网站可以做海报南京搜索引擎推广优化
  • 做一个网站开发要多少钱爱战网关键词挖掘
  • 做个浏览器多少钱惠州短视频seo
  • 阳江网络问政平台新闻发布会深圳关键词排名seo
  • 网站建设规划书道客巴巴郑州建网站的公司
  • 平面设计兼职怎么收费长沙正规竞价优化服务
  • 无锡本地做网站seo手机端排名软件
  • a站app优化搜索引擎营销
  • 天津自己制作网站长沙有实力seo优化公司
  • 网站死链接检查澎湃新闻
  • 西亚网站建设科技一键seo提交收录
  • 稿定设计官方免费下载网站建设公司seo关键词
  • 福田网站开发新媒体营销策略有哪些
  • 网站备案需要当面核验哪些信息大连头条热点新闻
  • 网站开发制作全包服务营销理论
  • 网站设计书搜索引擎排名查询工具
  • 天地做网站南平seo
  • jquery代码做的网站沈阳关键词seo