c#数组移除同一个值
数组移除数据,需要循环覆盖的方法。
可以快慢双指针。循环一遍。
public int RemoveElement(int[] nums, int val) { int n=nums.Length; int low=0; for(int i=0;i<n;i++) { if(nums[i]!=val) { nums[low] =nums[i]; low++; } } return low; }
遍历数组需要循环两个。
public int RemoveElement(int[] nums, int val) { int n=nums.Length; int k=n; for(int i=0;i<k;i++) { if(nums[i]==val) { k--; for(int j=i;j<k;j++) { nums[j]=nums[j+1]; } i--; } } return k; }