diff --git a/rust/2215-find-the-difference-of-two-arrays.rs b/rust/2215-find-the-difference-of-two-arrays.rs new file mode 100644 index 000000000..43e26a94c --- /dev/null +++ b/rust/2215-find-the-difference-of-two-arrays.rs @@ -0,0 +1,30 @@ +use std::collections::HashSet; + +impl Solution { + pub fn find_difference(nums1: Vec, nums2: Vec) -> Vec> { + + let s1: HashSet = nums1.into_iter().collect(); + let s2: HashSet = nums2.into_iter().collect(); + + let mut r1: HashSet = HashSet::new(); + let mut r2: HashSet = HashSet::new(); + + for n in &s1{ + if !s2.contains(n){ + r1.insert(*n); + } + } + + for n in &s2{ + if !s1.contains(n){ + r2.insert(*n); + } + } + + vec![ + r1.into_iter().collect(), + r2.into_iter().collect(), + ] + + } +} \ No newline at end of file