题目
Given an array nums and a value val, 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 by modifying the input array in-place with O(1) extra memory.
The order of elements can be changed. It doesn’t matter what you leave beyond the new length.
Clarification:
Confused why the returned value is an integer but your answer is an array?
Note that the input array is passed in by reference, which means a modification to the input array will be known to the caller as well.
Internally you can think of this:
1 | // nums is passed in by reference. (i.e., without making a copy) |
1 | Example 1: |
题解
难度为简单。
特别注意不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。
解法一:双指针法
1 | //Go |
执行结果:
1 | leetcode-cn: |