题目描述
给定一个数组和一个值,使用就地算法将数组中所有等于这个值的元素删除,并返回新数组的长度。
元素的顺序可以更改。你不用去关心大于当前数组长度的空间里面存储的值
class Solution {
public:
int removeElement(int A[], int n, int elem) {
for(int i = 0; i < n; i++){
while(A[i] == elem && i < n){
A[i] = A[--n];
}
}
return n;
}
};

错因分析