所用算法:双指针(用于改变数组中成员的操作)
算法说明:一般对数组进行更新会使用双指针的算法,一个是快指针,一个是慢指针。一般快指针是用来在原数组中获取新数组中的元素,慢指针是用来获取新数组需要更新的位置(相当于另外一个数组)。
1 int removeElement(vector<int>& nums, int val) { 2 int fast=0,slow=0,n=nums.size(); 3 for(;fast<n;++fast) 4 { 5 if(nums[fast]!=val) 6 { 7 nums[slow++]=nums[fast]; 8 } 9 } 10 return slow; 11 }