您的位置:首页 > 其它

LeetCode 27 - Remove Element

2015-05-24 10:42 323 查看

一、问题描述


Description:

Given an array and a value, remove all instances of that value in place and return the new length.

The order of elements can be changed. It doesn’t matter what you leave beyond the new length.



给一个数组与一个整数 value,删除数组中值等于value的元素,并返回新数组的长度。

注意:原地工作

二、解题报告

直接遍历就行了。

class Solution {
public:
int removeElement(vector<int>& nums, int val) {
vector<int>::iterator beg = nums.begin();
for( ; beg!=nums.end(); ) {
if(*beg == val)
beg = nums.erase(beg);
else
++beg;
}
return nums.size();
}
};


注意
erase()
的用法,它在删除迭代器后,会返回下一个元素的迭代器。

LeetCode答案源代码:https://github.com/SongLee24/LeetCode
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: