leetcode350. 两个数组的交集 II
给定两个数组,编写一个函数来计算它们的交集。
示例 1:
输入: nums1 = [1,2,2,1], nums2 = [2,2]
输出: [2,2]
示例 2:
输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出: [4,9]
说明:
输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。
我们可以不考虑输出结果的顺序。
进阶:
如果给定的数组已经排好序呢?你将如何优化你的算法?
如果 nums1 的大小比 nums2 小很多,哪种方法更优?
如果 nums2 的元素存储在磁盘上,磁盘内存是有限的,并且你不能一次加载所有的元素到内存中,你该怎么办?
思路:相似题:leetcode349. 两个数组的交集
但是这个题set解决不了问题了。用map记录出现的次数即可。
class Solution {public int[] intersect(int[] nums1, int[] nums2) {if (nums1.length > nums2.length) {return intersect(nums2, nums1);}HashMap<Integer, Integer> m = new HashMap<>();for (int n : nums1) {m.put(n, m.getOrDefault(n, 0) + 1);}int k = 0;for (int n : nums2) {int cnt = m.getOrDefault(n, 0);if (cnt > 0) {nums1[k++] = n;m.put(n, cnt - 1);}}return Arrays.copyOfRange(nums1, 0, k);}
}
leetcode350. 两个数组的交集 II相关推荐
- leetcode350. 两个数组的交集 II(hashmap)
给定两个数组,编写一个函数来计算它们的交集. 将长度小的数组放入hashmap,记录出现的次数,遍历另一个数组,找出交集 class Solution {public int[] intersect( ...
- 两个数组的交集 II
两个数组的交集 II 给定两个数组,编写一个函数来计算它们的交集. 示例 1: 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2,2] 示例 2: 输入:nums1 ...
- leetcode初级算法4.两个数组的交集 II
leetcode初级算法4.两个数组的交集 II 仅为个人刷题记录,不提供解题思路 题解与收获 我的解法:(总结在代码中) public int[] intersect(int[] nums1, in ...
- 两个对象数组交集_yiduobo的每日leetcode 349.两个数组的交集 amp;amp; 350.两个数组的交集II...
祖传的手艺不想丢了,所以按顺序写一个leetcode的题解.计划每日两题,争取不卡题吧 349.两个数组的交集https://leetcode-cn.com/problems/intersection ...
- leetcode系列-350.两个数组的交集II
leetcode系列–第350题.两个数组的交集II 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集. 返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一 ...
- LeetCode算法题350:两个数组的交集II(Intersection of Two Arrays II)
技术交流可以加: 本人微信:xcg852390212 本人qq:852390212 学习交流qq群1(已满): 962535112 学习交流qq群2: 780902027 两个数组的交集II Leet ...
- LeetCode 350. 两个数组的交集 II
350. 两个数组的交集 II 难度简单640收藏分享切换为英文接收动态反馈 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集.返回结果中每个元素出现的次数,应与元素在两 ...
- Leetcode 350. 两个数组的交集 II 解题思路及C++实现
解题思路: 和349. 两个数组的交集 这道题目很相似,这道题只是在返回的数组中,多了重复的数字,其实相较于349题,350题更简单. 先对两个数组进行排序,然后遍历这两个数组,找到相同的数字之后,就 ...
- 350. Intersection of Two Arrays II 两个数组的交集 II
Title 给定两个数组,编写一个函数来计算它们的交集. 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = ...
最新文章
- LeetCode简单题之二叉树的最大深度
- 2018/5/1-----1987年图灵奖PPT
- 通过 .gitlab-ci.yml配置任务-官方配置文件翻译
- YUV视频格式到RGB32格式转换的速度优化 上篇(转)
- 关于SysinternalsSuite全部工具【详解】
- 文件服务器的配置与管理(2) 实现软RAID
- python对excel增删改查_Python之Excel 优雅操作手法 精选
- 【Vue.js 3.0】不使用根标签,Error:[vue/no-multiple-template-root] The template root requires exactly one ...
- mysql的limit_MYSQL中LIMIT用法
- 【numpy】使用numpy/pytorch创建数组时的一点疑问
- Spring : AutowireCapableBeanFactory自动装配能力
- 高中计算机课程事例,[案例教学法在高中信息技术教学中的应用] 教学案例分析100例...
- matlab求两点的距离,matlab求两点间距离
- 目标检测 | CVPR 2019 目标检测论文汇总
- windows超级工具AlantopTool
- Spark、Hadoop大数据平台搭建
- 测试进阶必备,这5款http接口自动化测试工具真的很香
- 80psi等于多少kpa_压力单位PSI与kpa换算
- C语言中从字符串中提取数字
- Nova的安装及其配置
热门文章
- win10 python 调用模块_python常识系列14--gt;python通过jpype模块调用jar包
- 机器人蛮王_盖伦:吊打我老婆,蛮王:我也是,他:被老婆打的不敢出塔
- UE4 查看打包文件内容
- 获得系统中某个进程的cpu使用率
- 擦窗机器人测试标准_擦窗机器人,我选择玻妞的三个理由!
- 是网关吗_智能家居网关功能这么多,你都知道吗?
- jdbc存储过程mysql_JDBC对MySQL数据库存储过程的调用
- ASP.NET MVC 入门7、Hellper与数据的提交与绑定
- C# 彻底搞懂async/await
- 850是什么意思_沃尔沃为什么不是一线豪华品牌?