LeetCode75-2215-Find-The-Difference-Of-Two-Arrays

🧠 思路总结

List<List<Integer>> res = new ArrayList<>();: 创建了一个能装 List 的盒子,此时内存里的结构是: res ──> []。
再放进去两个空盒子:

1
2
res.add(new ArrayList<>());
res.add(new ArrayList<>());

在这之后内存变成:

1
2
3
4
res ──> [
[], // res.get(0)
[] // res.get(1)
]

❗ 易错点 / 小坑

  • List<List<Integer>> res = new ArrayList<>();不代表已经有两个List了,它只是 “我有一个 List,将来可以往里面放 List”

✅ 代码(Java)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
class Solution {
public List<List<Integer>> findDifference(int[] nums1, int[] nums2) {
List<List<Integer>> res = new ArrayList<>();
res.add(new ArrayList<>());
res.add(new ArrayList<>());
Set<Integer> set1 = new HashSet<>();
Set<Integer> set2 = new HashSet<>();
for (int x : nums1) {
set1.add(x);
}
for (int x : nums2) {
set2.add(x);
}
for (int x : set1) {
if (!set2.contains(x)) {
res.get(0).add(x);
}
}
for (int x : set2) {
if (!set1.contains(x)) {
res.get(1).add(x);
}
}
return res;
}
}

LeetCode75-2215-Find-The-Difference-Of-Two-Arrays
https://powersixxx.github.io/leetcode-blog/2026/02/06/LeetCode75-2215-Find-The-Difference-Of-Two-Arrays/
作者
Baowen Liu
发布于
2026年2月6日
许可协议