双指针,理解快慢指针的含义
class Solution {
public:
int removeElement(vector<int>& nums, int val) {
//双指针算法
// fast 指的是 寻找到新数组需要的的值
// low 指的是 新数组的值,所以fast的值要赋给low
int fast=0,low=0,n=nums.size();
for(int fast=0;fast<n;++fast){
if(nums[fast]!=val){
nums[low] = nums[fast];
++low;
}
}
return low;
}
};