【Leetcode刷题篇】leetcode349 两个数组的交集
发布日期:2021-06-29 15:33:29
浏览次数:2
分类:技术文章
本文共 1014 字,大约阅读时间需要 3 分钟。
题目:给定两个数组,编写一个函数来计算它们的交集。
示例 1:
输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2]
示例 2:
输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出:[9,4]
题解一、用hashset先过滤,再判断里面 是否 有
public int[] intersection(int[] nums1,int[] nums2) { // TreeSet TreeSetset1 = new TreeSet<>(); for(int num1:nums1) { set1.add(num1); } TreeSet set2 = new TreeSet<>(); for(int num2:nums2) { set2.add(num2); } // 记录结果 int[] res = new int[set1.size()]; int index = 0; for(int num2:set2) { if(set1.contains(num2)) { res[index++] = num2; } } return Arrays.copyOfRange(res, 0,index); }
题解二、排序+双指针
public int[] intersection_2(int[] nums1,int[] nums2) { // 排序+双指针 Arrays.sort(nums1); Arrays.sort(nums2); int length1 = nums1.length; int length2 = nums2.length; int index1 = 0; int index2 = 0; int[] res = new int[length1]; int index = 0; //对其遍历 while(index1nums2[index2]) { index2++; } else if(nums1[index1]
转载地址:https://codingchaozhang.blog.csdn.net/article/details/109547160 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2024年04月14日 11时42分42秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
windows MQTT客户端
2019-04-29
LINUX下挂载(mount)查看树莓派镜像文件
2019-04-29
1元钱的超低成本单芯片USB单片机方案
2019-04-29
单片机/树莓派扩展双串口(TTL和RS485)
2019-04-29
基于CH568芯片的SATA电子盘方案
2019-04-29
linux下C语言判断网络是否连接
2019-04-29
2021/4/27课堂总结和作业
2019-04-29
2021.4.28课堂总结和作业
2019-04-29
2021.4.29课堂总结
2019-04-29
2021.4.30课堂总结和作业
2019-04-29
需要吗?2000GB+学习视频教程 面试资料免费下载
2019-04-29
MySQL对已存在数据库表添加自增ID字段
2019-04-29
idea中的一些常用快捷键
2019-04-29
js校验表单后提交表单的三种方法总结【转载】
2019-04-29
欢迎使用CSDN-markdown编辑器
2019-04-29
a标签中href调用js的几种方法
2019-04-29
jstl标签详解
2019-04-29
Eclipse中使用SVN的使用
2019-04-29
JSON.parse和eval的区别
2019-04-29