rustgym/leetcode/
_27_remove_element.rs

1struct Solution;
2
3impl Solution {
4    fn remove_element(nums: &mut Vec<i32>, val: i32) -> i32 {
5        let n: usize = nums.len();
6        let mut size: usize = 0;
7        for i in 0..n {
8            if nums[i] != val {
9                nums[size] = nums[i];
10                size += 1;
11            }
12        }
13        size as i32
14    }
15}
16
17#[test]
18fn test() {
19    let mut nums = vec![3, 2, 2, 3];
20    let val = 3;
21    assert_eq!(Solution::remove_element(&mut nums, val), 2);
22    let mut nums = vec![0, 1, 2, 2, 3, 0, 4, 2];
23    let val = 2;
24    assert_eq!(Solution::remove_element(&mut nums, val), 5);
25}