至少在两个数组中出现的值

给你三个整数数组 nums1nums2nums3 ,请你构造并返回一个 元素各不相同的 数组,且由 至少两个 数组中出现的所有值组成。数组中的元素可以按 任意 顺序排列。

示例 1:

输入 :nums1 = 1,1,3,2, nums2 = 2,3, nums3 = 3
输出3,2
解释 :至少在两个数组中出现的所有值为:

3 ,在全部三个数组中都出现过。

2 ,在数组 nums1 和 nums2 中出现过。

示例 2:

输入 :nums1 = 3,1, nums2 = 2,3, nums3 = 1,2
输出2,3,1
解释 :至少在两个数组中出现的所有值为:

2 ,在数组 nums2 和 nums3 中出现过。

3 ,在数组 nums1 和 nums2 中出现过。

1 ,在数组 nums1 和 nums3 中出现过。

示例 3:

输入 :nums1 = 1,2,2, nums2 = 4,3,3, nums3 = 5
输出 :\[\]
解释:不存在至少在两个数组中出现的值。

提示:

  • 1 <= nums1.length, nums2.length, nums3.length <= 100
  • 1 <= nums1[i], nums2[j], nums3[k] <= 100

题目来源https://leetcode.cn/problems/two-out-of-three/description/

解题方法:

php 复制代码
class Solution {

    /**
     * @param Integer[] $nums1
     * @param Integer[] $nums2
     * @param Integer[] $nums3
     * @return Integer[]
     */
    function twoOutOfThree($nums1, $nums2, $nums3) {
    	// $nums1和$nums2的交集并去重
        $intersect_one = array_unique(array_intersect($nums1, $nums2));
  		// 同上
        $intersect_two = array_unique(array_intersect($nums1, $nums3));
        // 同上
        $intersect_three = array_unique(array_intersect($nums2, $nums3));
        // 拼接后去重
        $res = array_unique(array_merge($intersect_one, $intersect_two, $intersect_three));
        return $res;
    }
}
相关推荐
To_OC11 小时前
LC 49 字母异位词分组:想到哈希表很简单,选对 key 才是精髓
javascript·算法·leetcode
用户9385156350716 小时前
从 O(n²) 到 O(nlogn):一文读懂快速排序的“快”与“妙”
javascript·算法
To_OC17 小时前
手写快排次次翻车?别死背快排模板了,这才是面试官想听的底层逻辑
javascript·算法·排序算法
饼干哥哥18 小时前
Reddit VOC调研太慢?搭一个AI专家团队半小时洞察任何品类|以猫用饮水机为例
人工智能·算法·ai编程
地平线开发者19 小时前
Transformer模型部署之性能优化指南
算法
地平线开发者20 小时前
人在途中:从“编译失败”到“模型可落地”——CUDA 自定义算子
算法·自动驾驶
半个落月1 天前
从递归到快速排序:用 JavaScript 把分治思想讲明白
javascript·算法·面试
小月土星1 天前
JavaScript 快速排序:从 pivot、双指针到分治思想
javascript·算法·面试
小月土星1 天前
JavaScript 递归入门:从 1 到 n 求和,再到数组扁平化
javascript·算法·面试