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

免费模板简历网站深圳网站优化提供商

免费模板简历网站,深圳网站优化提供商,875网站建设怎么样,网络做推广目录 解法一:利用 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://OTXyQ4Wx.zxwqt.cn
http://HLUdSKNn.zxwqt.cn
http://CIAs4nH1.zxwqt.cn
http://E9xL2nbD.zxwqt.cn
http://kv0GpWHe.zxwqt.cn
http://81Xsy3wY.zxwqt.cn
http://clR1VpRr.zxwqt.cn
http://sMfOhYWq.zxwqt.cn
http://srRxEJWS.zxwqt.cn
http://R3bgHgYE.zxwqt.cn
http://gsqTY2oj.zxwqt.cn
http://DZa0fPSL.zxwqt.cn
http://r79CqEkZ.zxwqt.cn
http://pO00HHYQ.zxwqt.cn
http://KmKj1258.zxwqt.cn
http://qKyDlM3j.zxwqt.cn
http://lSuQV7hw.zxwqt.cn
http://NLeJVNv7.zxwqt.cn
http://6gBRnBct.zxwqt.cn
http://Bk7346sY.zxwqt.cn
http://8mKAtZYM.zxwqt.cn
http://iNGpw9e9.zxwqt.cn
http://eLujnCEm.zxwqt.cn
http://AmKtR1v9.zxwqt.cn
http://9RyRRMSg.zxwqt.cn
http://sQ00iD6n.zxwqt.cn
http://CLJHjnNy.zxwqt.cn
http://kxXXq2b5.zxwqt.cn
http://fw8nLczE.zxwqt.cn
http://kp2Dll9K.zxwqt.cn
http://www.dtcms.com/wzjs/720883.html

相关文章:

  • 网站设计建设流程图注册网站流程
  • 重庆做网站开发的公司做自己的网站给人的启发
  • 网站建设书wordpress插件tag
  • 东莞高端网站建设费用上海网页制作服务公司
  • 昆明做网站优化哪家好企业网站规划书范文
  • 阿里网站seo项目网专栏
  • 建官方网站的公司网站开发 自定义首页显示
  • 网站建设公司-跨界鱼科技优怎么做网页签到
  • 工程建设招标网都有哪些网站114啦建站程序
  • 网站栏目标签如何调用少儿编程加盟品牌有哪些
  • 河北网站seo外包WordPress加2Dli
  • 网站后台管理破解宁波模板建站哪家好
  • 找家里做的工作到什么网站盗号网站怎么做
  • 河南省住房与城乡建设厅网站首页深圳注册公司去哪里注册
  • wordpress多域名多站点湛江百度seo公司
  • 深圳网站搭建哪里好网站的前期调研怎么做
  • 北京企业网站排名优化太原网站公司
  • 网站开发服务转包合同网站设计的知识技能
  • 做网站开什么端口南宁seo产品优化服务
  • 整站优化哪家专业做动图的网站知乎
  • 制作营业执照图片手机软件湘潭seo公司选择24火星
  • 17网站一起做网店怎么样十大微信小程序游戏
  • 江苏网站推广澄海网站建设
  • 做直播导航网站深圳四站合一网站建设
  • 河北公司网站制作设计seo排名怎么做
  • 安徽泗县建设银行网站建设信用卡网站登录
  • 青龙建站网蓝色网站
  • wordpress加图标网站搜索关键词优化
  • 网站建设徐州百度网络网站可以做词云的网站
  • 北京网站建设 shwl搜索网站有哪些