文章目录

  • 1. 题目
  • 2. 解题

1. 题目

给出三个均为 严格递增排列 的整数数组 arr1,arr2 和 arr3。

返回一个由 仅 在这三个数组中 同时出现 的整数所构成的有序数组。

示例:
输入: arr1 = [1,2,3,4,5], arr2 = [1,2,5,7,9], arr3 = [1,3,4,5,8]
输出: [1,5]
解释: 只有 1 和 5 同时在这三个数组中出现.提示:
1 <= arr1.length, arr2.length, arr3.length <= 1000
1 <= arr1[i], arr2[i], arr3[i] <= 2000

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/intersection-of-three-sorted-arrays
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 后两个数组分别形成哈希表
  • 遍历第一个数组,在后两个数组的哈希表里查找
class Solution {public:vector<int> arraysIntersection(vector<int>& arr1, vector<int>& arr2, vector<int>& arr3) {unordered_set<int> s2(arr2.begin(), arr2.end()), s3(arr3.begin(),arr3.end());vector<int> ans;for(int i = 0; i < arr1.size(); ++i){if(s2.find(arr1[i]) != s2.end() && s3.find(arr1[i])!=s3.end())ans.push_back(arr1[i]);}return ans;}
};

36 ms 13.3 MB


长按或扫码关注我的公众号,一起加油、一起学习进步!

LeetCode 1213. 三个有序数组的交集(哈希set)相关推荐

  1. 腾讯实习笔试:关于几个有序数组求交集的问题

    题目就是假设有三个有序数组对其求交集,要求算法空间复杂度必须小,有序数组量会比较大. 解法: 第一种就是用二分法查找,二分法查找的效率是log(n),两个数组求交集就是n1log(n2),当n1远小于 ...

  2. LeetCode——合并两个有序数组

    LeetCode--合并两个有序数组 题目描述: 给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组. 说明: 初始化 nu ...

  3. LeetCode简单题之有序数组中出现次数超过25%的元素

    题目 给你一个非递减的 有序 整数数组,已知这个数组中恰好有一个整数,它的出现次数超过数组元素总数的 25%. 请你找到并返回这个整数 示例: 输入:arr = [1,2,2,6,6,6,6,7,10 ...

  4. LeetCode实战:将有序数组转换为二叉搜索树

    题目英文 Given an array where elements are sorted in ascending order, convert it to a height balanced BS ...

  5. leetcode系列-350.两个数组的交集II

    leetcode系列–第350题.两个数组的交集II 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集. 返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一 ...

  6. leetcode系列-349.两个数组的交集

    leetcode系列–第349题.两个数组的交集 给定两个数组 nums1 和 nums2 ,返回 它们的交集 . 输出结果中的每个元素一定是 唯一 的.我们可以 不考虑输出结果的顺序 . 示例 1: ...

  7. 20190917:(leetcode习题)将有序数组转换为二叉搜索树

    将有序数组转换为二叉搜索树 题目 大致思路 代码实现 题目 大致思路 将有序数组转换为二叉平衡树,即左边的数和右边数的差值不超过1,那么root节点应该为正中间的数,然后左边的剩余的中间为root.l ...

  8. LeetCode 2248、多个数组求交集

    2248.多个数组求交集 1)题目描述 给你一个二维整数数组 nums ,其中 nums[i] 是由 不同 正整数组成的一个非空数组,按 升序排列 返回一个数组,数组中的每个元素在 nums 所有数组 ...

  9. 【leetcode】2248. 多个数组求交集(js实现)

    1. 题目 2248. 多个数组求交集 2. 思路 先找到一个参考集合set1 去遍历nums中的每一个数组,并遍历数组中的每一个元素,依次求两个集合的交集,并将得到的交集赋值给参考集合set1 最后 ...

最新文章

  1. TensorFlow2-神经网络基础
  2. python词云安装什么库_python词云安装什么库
  3. matlab 音频编辑器,在Matlab中使用App Designer可以进行实时音频处理吗?
  4. Jmeterbadboy环境搭建
  5. c语言空白字符的aci,c语言的保留字符有32个是那些啊???代表什么于是啊??...
  6. mindray心电监护仪使用说明_界面张力仪的使用步骤以及画面清晰度相关说明
  7. spring data redis的使用jar包版本冲突问题
  8. b - 数据结构实验之排序二:交换排序_数据结构学习大纲
  9. 学习Java心得体会
  10. [转]中国七大顶级黑客X档案
  11. html+css+js制作原神官网,web前端大作业(流风眷堇庭+6个页面+链接)
  12. VScode设置目录分级显示
  13. 开发一款Android App,从零开始详细讲解
  14. 无人机飞控技术最详细解读
  15. 張潮《幽夢影》:「讀史宜夏」
  16. [图形学] 基于图像的照明:漫反射辐照度
  17. Urban Airship Server API - Java客户端实例
  18. 微软 Visual Studio 2017 RC 中文版下载 - 免费社区版/专业版/企业版
  19. ibm3500服务器型号,IBM x365 M2服务器的详细配置.doc
  20. .netFramewo 4.0软件报 未能加载文件或程序集“System.Core, Version=2.0.5.0错误处理

热门文章

  1. 解决:flask-sqlalchemy.exc.DataError: (pymysql.err.DataError) (1406数据库字段超出长度错误)
  2. Doc2Bow简介与实践Demo
  3. C++远航之封装篇——默认构造函数、初始化列表、拷贝构造函数
  4. sed tr 去除PATH中的重复项
  5. C# 中的占位符本质
  6. COJ 1081 集训队分组
  7. UltraEdit中显示空格与回车的问题
  8. Linux平台gcc和动态共享库的基础知识
  9. 如何正确的使用微信公众号
  10. 美图赏析:拆解USB无线网卡,电路方案非常经典