class Solution {
public:
void moveZeroes(vector<int>& nums) {
size_t i = 0;
for (size_t j = 0; j < nums.size(); ++j) {
if (nums[j] != 0) {
std::swap(nums[i], nums[j]);
i += 1;
}
}
}
};
impl Solution {
pub fn move_zeroes(nums: &mut Vec<i32>) {
let mut i = 0;
for j in 0..nums.len() {
if nums[j] != 0 {
nums.swap(i, j);
i += 1;
}
}
}
}