leetcode_rust/
intersection_of_two_arrays.rs1#![allow(dead_code)]
2
3pub fn intersection(nums1: Vec<i32>, nums2: Vec<i32>) -> Vec<i32> {
4 use std::collections::HashSet;
5 let mut set1 = HashSet::new();
6
7 for num in nums1 {
8 set1.insert(num);
9 }
10
11 let mut set2 = HashSet::new();
12 for num in nums2 {
13 set2.insert(num);
14 }
15
16 set1.intersection(&set2).map(|x| *x).collect()
17}
18
19#[cfg(test)]
20mod tests {
21 use super::*;
22
23 #[test]
24 fn test1() {
25 let nums1 = vec![1, 2, 2, 1];
26 let nums2 = vec![2, 2];
27 assert_eq!(intersection(nums1, nums2), vec![2]);
28 }
29}