0%

27. 移除元素

双指针

用 left 记录新数组长度,right 扫描数组;遇到不等于 val 的元素就写到 left 位置并后移。

时间复杂度

空间复杂度

1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
public int removeElement(int[] nums, int val) {
int left = 0, right = 0;
while (right < nums.length) {
if (nums[right] != val) {
nums[left] = nums[right];
left++;
}
right++;
}
return left;
}
}