File tree 4 files changed +69
-17
lines changed
solution/0300-0399/0349.Intersection of Two Arrays
4 files changed +69
-17
lines changed Original file line number Diff line number Diff line change 36
36
<!-- 这里可写当前语言的特殊实现逻辑 -->
37
37
38
38
``` python
39
-
39
+ class Solution :
40
+ def intersection (self , nums1 : List[int ], nums2 : List[int ]) -> List[int ]:
41
+ s1, s2 = set (nums1), set (nums2)
42
+ return list (s1 & s2)
40
43
```
41
44
42
45
### ** Java**
43
46
44
47
<!-- 这里可写当前语言的特殊实现逻辑 -->
45
48
46
49
``` java
47
-
50
+ class Solution {
51
+ public int [] intersection (int [] nums1 , int [] nums2 ) {
52
+ Set<Integer > s1 = transfer(nums1);
53
+ Set<Integer > s2 = transfer(nums2);
54
+ s1. retainAll(s2);
55
+ int [] output = new int [s1. size()];
56
+ int i = 0 ;
57
+ for (Integer e : s1) {
58
+ output[i++ ] = e;
59
+ }
60
+ return output;
61
+ }
62
+
63
+ private Set<Integer > transfer (int [] nums ) {
64
+ Set<Integer > s = new HashSet<> ();
65
+ for (int e : nums) {
66
+ s. add(e);
67
+ }
68
+ return s;
69
+ }
70
+ }
48
71
```
49
72
50
73
### ** ...**
Original file line number Diff line number Diff line change 44
44
### ** Python3**
45
45
46
46
``` python
47
-
47
+ class Solution :
48
+ def intersection (self , nums1 : List[int ], nums2 : List[int ]) -> List[int ]:
49
+ s1, s2 = set (nums1), set (nums2)
50
+ return list (s1 & s2)
48
51
```
49
52
50
53
### ** Java**
51
54
52
55
``` java
53
-
56
+ class Solution {
57
+ public int [] intersection (int [] nums1 , int [] nums2 ) {
58
+ Set<Integer > s1 = transfer(nums1);
59
+ Set<Integer > s2 = transfer(nums2);
60
+ s1. retainAll(s2);
61
+ int [] output = new int [s1. size()];
62
+ int i = 0 ;
63
+ for (Integer e : s1) {
64
+ output[i++ ] = e;
65
+ }
66
+ return output;
67
+ }
68
+
69
+ private Set<Integer > transfer (int [] nums ) {
70
+ Set<Integer > s = new HashSet<> ();
71
+ for (int e : nums) {
72
+ s. add(e);
73
+ }
74
+ return s;
75
+ }
76
+ }
54
77
```
55
78
56
79
### ** ...**
Original file line number Diff line number Diff line change 1
1
class Solution {
2
2
public int [] intersection (int [] nums1 , int [] nums2 ) {
3
- HashSet <Integer > set1 = new HashSet <Integer >();
4
- for (Integer n : nums1 ) set1 .add (n );
5
- HashSet <Integer > set2 = new HashSet <Integer >();
6
- for (Integer n : nums2 ) set2 .add (n );
7
-
8
- set1 .retainAll (set2 );
9
-
10
- int [] output = new int [set1 .size ()];
11
- int idx = 0 ;
12
- for (int s : set1 ) output [idx ++] = s ;
3
+ Set <Integer > s1 = transfer (nums1 );
4
+ Set <Integer > s2 = transfer (nums2 );
5
+ s1 .retainAll (s2 );
6
+ int [] output = new int [s1 .size ()];
7
+ int i = 0 ;
8
+ for (Integer e : s1 ) {
9
+ output [i ++] = e ;
10
+ }
13
11
return output ;
14
12
}
13
+
14
+ private Set <Integer > transfer (int [] nums ) {
15
+ Set <Integer > s = new HashSet <>();
16
+ for (int e : nums ) {
17
+ s .add (e );
18
+ }
19
+ return s ;
20
+ }
15
21
}
Original file line number Diff line number Diff line change 1
1
class Solution :
2
- def intersection (self , nums1 : ' List[int]' , nums2 : ' List[int]' ) -> ' List[int]' :
3
-
4
- return list (set ( nums1 ). intersection ( set ( nums2 )) )
2
+ def intersection (self , nums1 : List [int ], nums2 : List [int ]) -> List [int ]:
3
+ s1 , s2 = set ( nums1 ), set ( nums2 )
4
+ return list (s1 & s2 )
You can’t perform that action at this time.
0 commit comments