(27)Remove Element
题目:将所给数组内的等于某个数的元素去掉,返回心数组长度。
例如:所给数组为nums = [3, 2, 2, 3],要去掉的数字为val = 3,返回数组为nums_new = [2, 2],长度为2。
另外:不要开新的内存,只能使用现有开辟的内存。元素的顺序可以改变。数组新长度外留下什么都没关系。
跟上一道题很像,基本就是一次面试里一个问题的进阶版,跟上一道题的思路相同,改改代码就出来了。
下面是代码:
class Solution {
public:
int removeElement(vector<int>& nums,int M) {
int len = nums.size();
if(len == 0){
return 0;
}
int result = 0;
for(int i = 0; i < len; i ++){
if(nums[i] == M){
continue;
}
else{
nums[result] = nums[i];
result ++;
}
}
return result;
}
};