关闭

Remove Element - Leetcode

标签: leetcode
95人阅读 评论(0) 收藏 举报
分类:

题意:在数组中移掉指定元素val,得到新的长度newlength。数组元素顺序可以改变,并且新的长度之后的元素可以忽略。
这道题关键在于要将val外的元素移到newlength前面。如果遍历数组然后删除等于val的项,会改变数组结构,不便于遍历。所以这里的做法是不删除元素,只是将元素向前移动。

class Solution {
public:
    int removeElement(vector<int>& nums, int val) {
        int start=0;
        for(int i=0;i<nums.size();i++)
            if(val!=nums[i])
                nums[start++]=nums[i];
        return start;
    }
};
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6239次
    • 积分:560
    • 等级:
    • 排名:千里之外
    • 原创:51篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条