diff --git a/rs/find-all-duplicates-in-an-array.rs b/rs/find-all-duplicates-in-an-array.rs new file mode 100644 index 0000000..fc2a2d6 --- /dev/null +++ b/rs/find-all-duplicates-in-an-array.rs @@ -0,0 +1,17 @@ +impl Solution { + pub fn find_duplicates(mut nums: Vec) -> Vec { + let mut duplicates = vec![]; + + for i in 0..nums.len() { + let index = nums[i].abs() - 1; + + if nums[index as usize] < 0 { + duplicates.push(index + 1); + } else { + nums[index as usize] *= -1; + } + } + + duplicates + } +}