题目:
给一个数组nums和一个值val,原地移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,必须仅使用O(1)额外空间并原地修改输入数组。元素的顺序可以改变。
代码:
class Solution {
public:
int removeElement(vector<int>& nums, int val) {
//采用双指针
int point1 = 0;
for(int point2 = 0;point2 < nums.size();point2++){
if(nums[point2] != val){
nums[point1] = nums[point2];
point1++;
}
}
return point1;
}
};