5079 三个有序数组的交集 leetcode

简介: 5079 三个有序数组的交集 leetcode

给出三个均为 严格递增排列 的整数数组 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


```cpp

class Solution {

public:

   vector<int> arraysIntersection(vector<int>& arr1, vector<int>& arr2, vector<int>& arr3) {

       vector<int>v;

       vector<int>r;

       for(int i=0;i<arr1.size();i++)

           v.push_back(arr1[i]);

        for(int i=0;i<arr2.size();i++)

           v.push_back(arr2[i]);

        for(int i=0;i<arr3.size();i++)

           v.push_back(arr3[i]);

       sort(begin(v),end(v));

       for(int i=1;i<v.size()-1;i++)

       {

           if((v[i]==v[i-1])&&(v[i]==v[i+1]))

           {r.push_back(v[i]);

              i++;}

       }

              return r;

   }

};

```

严格递增数组:每个只出现一次。

目录
相关文章
|
5天前
|
存储 Java API
LeetCode------合并两个有序数组(4)【数组】
这篇文章介绍了LeetCode上的"合并两个有序数组"问题,并提供了三种解法:第一种是使用Java的Arrays.sort()方法直接对合并后的数组进行排序;第二种是使用辅助数组和双指针技术进行合并;第三种则是从后向前的双指针方法,避免了使用额外的辅助数组。
LeetCode------合并两个有序数组(4)【数组】
|
4天前
|
算法
LeetCode第26题删除有序数组中的重复项
这篇文章介绍了LeetCode第26题"删除有序数组中的重复项"的解题方法,通过使用双指针技巧,高效地去除数组中的相邻重复元素。
LeetCode第26题删除有序数组中的重复项
|
4天前
|
算法
LeetCode第80题删除有序数组中的重复项 II
文章介绍了LeetCode第80题"删除有序数组中的重复项 II"的解法,利用双指针技术在O(1)空间复杂度内原地删除重复元素,并总结了双指针技术在处理有序数组问题中的应用。
LeetCode第80题删除有序数组中的重复项 II
|
15天前
|
Python
【Leetcode刷题Python】977. 有序数组的平方
解决LeetCode "有序数组的平方" 问题的方法:使用Python内置的快速排序、直接插入排序(但会超时)和双指针技术,并给出了每种方法的Python实现代码。
7 1
【Leetcode刷题Python】977. 有序数组的平方
|
4天前
|
算法
LeetCode第88题合并两个有序数组
文章分享了LeetCode第88题"合并两个有序数组"的解法,通过从后向前的合并策略避免了数组元素的前移,使用三个指针高效地完成了合并过程。
|
14天前
|
Python
【Leetcode刷题Python】108. 将有序数组转换为二叉搜索树
LeetCode上108号问题"将有序数组转换为二叉搜索树"的Python实现,通过递归选取数组中间值作为根节点,构建高度平衡的二叉搜索树。
14 2
|
11天前
|
算法 Java
LeetCode初级算法题:环形链表+排列硬币+合并两个有序数组java解法
LeetCode初级算法题:环形链表+排列硬币+合并两个有序数组java解法
19 0
|
15天前
|
Python
【Leetcode刷题Python】26. 删除有序数组中的重复项
本文提供了一种使用快慢指针法在原地删除升序数组中重复元素的Python实现,返回删除后数组的新长度,同时保持元素的相对顺序。
21 0
|
15天前
|
存储 Python
【Leetcode刷题Python】88. 合并两个有序数组
合并两个有序数组的方法:正向双指针法和逆向双指针法,都具有O(m+n)的时间复杂度,但前者的空间复杂度为O(m+n),后者的空间复杂度为O(1),并给出了Python语言的实现代码。
23 0
|
2月前
|
算法 测试技术 程序员
力扣经典150题第二十七题:两数之和 II - 输入有序数组
力扣经典150题第二十七题:两数之和 II - 输入有序数组
16 1