Given an array and a value, remove all instances of that value in place and return the new length.
Do not allocate extra space for another array, you must do this in place with constant memory.
The order of elements can be changed. It doesn't matter what you leave beyond the new length.
Example:
Given input array nums = [3,2,2,3], val = 3
Your function should return length = 2, with the first two elements of nums being 2.
Hint:
- Try two pointers.Show More Hint
此题只需要用一个变量 size(记录新数组元素个数),和一个游标 i ,当游标所指向的元素不等于 val 时,将其加入到新数组中, size 自增 1,最后返回size。代码如下:
本文介绍了一种高效的方法来移除数组中所有指定值的元素,并保持原地修改,无需额外分配空间。通过使用一个变量记录新数组的元素数量及一个游标遍历原数组实现。

956

被折叠的 条评论
为什么被折叠?



