您的位置:首页 > 其它

<LeetCode OJ>Remove Element【27】

2016-01-02 17:11 501 查看


27. Remove Element

My Submissions

Question

Total Accepted: 93055 Total
Submissions: 285916 Difficulty: Easy

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.

Subscribe to see which companies asked this question

Hide Tags
Array Two
Pointers

Hide Similar Problems
(E) Remove Linked List Elements (E)
Move Zeroes

//思路首先:vector直接删除,并且返回size()即可
//没明白此题意义何在
class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        vector<int>::iterator iter=find(nums.begin(),nums.end(),val);
        while(iter!=nums.end())
        {
            nums.erase(iter);
            iter=find(nums.begin(),nums.end(),val);
        }
        return nums.size();  
    }
};


别人家的算法:(卧槽这样也行,你这叫删除?)

//思路首先:他实现了“删除”,并且返回了长度,并且AC了
class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        int cnt=0;
        for (int i = 0; i<nums.size(); i++)  
        {
            if(nums[i] != val)
                nums[cnt++] = nums[i];
        }   
        return cnt;  
    }
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: