题目:
Given an array and a value, remove all instances of that value in place and return the new length.
The order of elements can be changed. It doesn’t matter what you leave beyond the new length.
翻译:
给一个数组和一个val,移除所有和val相同的值并返回新的长度。元素顺序可以改变、
思路:
和上一道题差不多。定义一个count表示新的长度,找到和val相同的元素,直接跳过。要是不相同则nums[count++] = nums[i];最后的count就是除去val 的个数。
代码:
public int removeElement(int[] nums, int val) {
if(nums == null||nums.length == 0)
return 0;
int count = 0;
for(int i = 0; i < nums.length; i++)
{
if(nums[i]!=val)
nums[count++] = nums[i];
}
return count;
}