2215.找出两数组的不同

简介: 2215.找出两数组的不同

题目:给两个下标从0开始的整数数组nums1和nums2,返回一个长度为2的列表answer,其中:

answer[0]是nums1中所有不存在于nums2中的不同整数组成的列表。

answer[1]是nums2中所有不存在于nums1中的不同整数组成的列表。

解题思路:

为了较快地判断一个数组的某个元素是否在另一个数组中存在,我们可以用哈希集合来存储数组的元素,并进行判断。具体而言,我们用哈希集合 set1

与 set2 存储数组 nums1 与 nums2 中所有不同的元素。

我们用长度为 2 的嵌套列表 res 来保存两数组中不存在于另一数组中的元素。我们首先遍历哈希集合 set1 的每个元素,判断其是否位于 set2 中,如果不在,则我们将它加入 res[0]\textit{res}[0]res[0] 中;随后我们同样地遍历哈希集合 set2 的每个元素,判断其是否位于 set1 中,如果不在,则加入 res[1] 中。这样,我们就得到了两数组中各自的不同元素。与此同时,由于哈希集合 set1 与 set2 中不存在重复元素,因此 res[0] 与 res[1] 也一定不存在重复元素。最终我们返回 res 作为答案即可。

class Solution {
    public List<List<Integer>> findDifference(int[] nums1, int[] nums2) {
        HashSet<Integer> set1 = new HashSet<>();
        HashSet<Integer> set2 = new HashSet<>();
        for (int n : nums2) {
            set2.add(n);
        }
        for (int n : nums1) {
            set1.add(n);
        }
        for (int n : nums2) {
            set1.remove(n);
        }
        for (int n : nums1) {
            set2.remove(n);
        }
 
        return List.of(List.copyOf(set1), List.copyOf(set2));
    }
}


相关文章
|
8月前
一个16位的数以4位为一组分割,然后将各部分相加获取最终结果。
一个16位的数以4位为一组分割,然后将各部分相加获取最终结果。
|
8月前
|
存储 JavaScript 算法
TypeScript算法专题 - blog4 - 单链表节点的两-两翻转(两两一组逆序)
TypeScript算法专题 - blog4 - 单链表节点的两-两翻转(两两一组逆序)
55 0
|
算法 容器
算法:双指针解决数组划分和数组分块问题
算法:双指针解决数组划分和数组分块问题
|
8月前
|
存储 设计模式 算法
【数据结构和算法】找出两数组的不同
这是力扣的 2215 题,难度为简单,解题方案有很多种,本文讲解我认为最奇妙的一种。给你两个下标从0开始的整数数组nums1和nums2,请你返回一个长度为2的列表answer,其中: answer[0]是nums1中所有不存在于nums2中的不同整数组成的列表。 answer[1]是nums2中所有不存在于nums1中的不同整数组成的列表。 注意:列表中的整数可以按任意顺序返回。
102 1
|
8月前
|
设计模式 算法 Java
【数据结构和算法】交替合并字符串
给你两个字符串word1和word2。请你从word1开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回合并后的字符串。
116 1
两个有序链表序列的合并(附加代码模式)
两个有序链表序列的合并(附加代码模式)
70 1
|
存储
学C的第二十三天【继续深度剖析数据在内存中的存储:3. 浮点型在内存中的存储(重点);练习:1. 有序序列判断;2. 获得月份天数(多组输入);3. 使用指针打印数组内容;4. 使用指针使字符串逆序】-2
(4). 取出内存中的 指数E(三种情况):E全为1 指数E 是通过 真实值+中间值 算出来的,如果E全是1,(32位系统)说明E的真实值是 128,指数是128说明这个值是非常大的。 这时,如果 有效数字M 全为0,表示 ±无穷大(正负取决于符号位s)
|
存储 Python
Python实现划分数组为连续数字的集合
Python实现划分数组为连续数字的集合
115 0
|
存储 算法
数据结构 | 串的存储结构之顺序串【重要的边界判断】
数据结构中对于串的存储结构之顺序串,了解其基本实现及算法
248 0
数据结构 | 串的存储结构之顺序串【重要的边界判断】

热门文章

最新文章