您的位置:首页 > 其它

leetcode之Remove Element

2016-04-08 09:40 323 查看
这道题目有两个考察点,一个是返回值是数组大小减去数组中等于val的数的个数;第二,将最后数组的前面的数字都得是不等于val的数字,虽然这个数组不用返回,但是也是程序验证的点。

(1)C语言实现

int removeElement(int* nums, int numsSize, int val) {

    int count = 0;

    for(int i=0;i<numsSize;i++){

        if(nums[i]==val)

            count++;

        else

            nums[i-count] = nums[i];

    }

    return numsSize-count;

}

(2)C++实现

class Solution {

public:

    int removeElement(vector<int>& nums, int val) {

        int count = 0;

        for(int i=0;i<nums.size();i++){

            if(nums[i] == val){

                count++;   

            }

            else{

                nums[i-count] = nums[i];

            }

        }

        return nums.size()-count;

    }

};

(3)java实现

public class Solution {

    public int removeElement(int[] nums, int val) {

        int count = 0;

        for(int i=0;i<nums.length;i++){

            if(nums[i]==val)

                count++;

            else

                nums[i-count] = nums[i];

        }

        return nums.length-count;

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: