Remove Duplicates from Sorted Array

来源:互联网 发布:sql截断字符串 编辑:程序博客网 时间:2024/06/03 21:16

LeetCode No.26

Given asorted array, remove the duplicates in place such that each element appear onlyonce and return the new length.

Do notallocate extra space for another array, you must do this in place with constantmemory.


Forexample,

Given inputarray nums = [1,1,2], Your function should return length = 2, with the first two elements of nums being 1and 2 respectively. It doesn't matter what you leave beyond the new length.


class Solution {public:    int removeDuplicates(vector<int>& nums) {        if(nums.size()<2){            return nums.size();        }        int k=0;        for(int i=1;i<nums.size();i++){            if(nums[i]!=nums[i-1]){                nums[++k]=nums[i];            }        }        return k+1;    }};

思路:用k记录非重复数据的个数。直接在原向量上进行修改,不对多余的数据进行删除的操作。




0 0
原创粉丝点击