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

数据结构与算法之字典: Leetcode 349. 两个数组的交集 (Typescript版)

两个数组的交集

  • https://leetcode.cn/problems/intersection-of-two-arrays/description/

题目和解题参考

  • https://blog.csdn.net/Tyro_java/article/details/133279737

使用字典来解题的算法实现

字典:顾名思义,像新华字典一样可查找,基于键值对来存储

function intersection (nums1: number[], nums2: number[]): number[] {const map = new Map();nums1.forEach(n => {map.set(n, true);});let res = [];nums2.forEach(n => {// 匹配if(map.get(n)) {res.push(n);map.delete(n); // 紧接着移除改字典,因为已经用过了 }});return res;
}
  • 上述算法时间复杂度 O(n)
    • 准确来说是 O(m+n)
  • 空间复杂度O(n)
    • 注意:空间复杂度是临时变量的内存消耗,这里 map 是线性增长的,res也可能是线性增长的,所以最大就是 O(n)

TS中字典Map常用的api回顾

const m = new Map();// 增、改
m.set('a', 1); // 增加
m.set('b', true); // 增加
m.set('a', 2); // 修改// 查
m.get('a');// 删
m.delete('a');
m.clear();
http://www.lryc.cn/news/176883.html

相关文章:

  • day-56 代码随想录算法训练营(19)动态规划 part 16
  • 蓝桥等考Python组别四级005
  • 【Linux】diff 命令
  • 【51单片机】9-定时器和计数器
  • 2023年海南省职业院校技能大赛(高职组)信息安全管理与评估赛项规程
  • 大模型深挖数据要素价值:算法、算力之后,存储载体价值凸显
  • AI文章,AI文章生成工具
  • mac有必要用清理软件吗?有哪些免费的清理工具
  • React 全栈体系(十八)
  • TCP/UDP
  • c++内存对齐
  • leetcode 33. 搜索旋转排序数组
  • VCS flow学习
  • 微信扫码关注公众号登录功能php实战分享
  • Git 精简快速使用
  • 线性约束最小方差准则(LCMV)波束形成算法仿真
  • 什么是内容运营?
  • 搭建安信可小安派Windows 开发环境
  • XML文件反序列化读取
  • 会议剪影 | 思腾合力受邀参加2023第二届世界元宇宙大会并作主题演讲
  • 加密算法、哈希算法及其区别+国密简介
  • LeetCode算法二叉树—222. 完全二叉树的节点个数
  • Scrapy-应对反爬虫机制
  • Direct3D字体
  • 麒麟软件操作系统下载
  • ARM---实现1-100求和任务
  • Vue+Three.js实现三维管道可视化及流动模拟续集
  • 基于Xilinx UltraScale+ MPSOC(ZU9EG/ZU15EG)的高性能PCIe数据预处理平台
  • IMX6ULL ARM Linux开发板SD卡启动,SD卡的分区与分区格式化创建
  • 去哪里找图标?