Hi,
So I was just trying to resolve some leetcode exercises and I got myself using the "hail-mary" clone call on a vector.
My question is: Is there a way to build a enumerated iterator without cloning nums
vector?
pub fn remove_duplicates(nums: &mut Vec<i32>) -> i32 {
let mut pivot: i32 = nums[0];
let mut occ: usize = 0;
let mut rm_count: usize = 0;
let nums_orig_size: usize = nums.len();
// TODO how do I avoid a clone here?
for (i, num) in nums.clone().iter().enumerate() {
if *num != pivot {
pivot = *num;
occ = 1;
} else {
occ += 1;
}
if occ > 2 {
nums.remove(i - rm_count);
rm_count += 1;
}
}
(nums_orig_size - rm_count) as i32
}