[图片] [LeetCode]Remove Duplicates from Sorted Array 记录 题目 Remove Duplicates from Sorted Array 的意思是给出一个排列数组,就地删除重复的元素,以使每一个元素仅出现一次,并返回新的长度。同时不允许使用额外的数组,你必须在原有数组的基 ..

[LeetCode]Remove Duplicates from Sorted Array 记录

[LeetCode]Remove Duplicates from Sorted Array 记录

题目 Remove Duplicates from Sorted Array 的意思是给出一个排列数组,就地删除重复的元素,以使每一个元素仅出现一次,并返回新的长度。同时不允许使用额外的数组,你必须在原有数组的基础上进行调整。

示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。

给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。你不需要考虑数组中超出新长度后面的元素。

个人代码

class Solution {
    public int removeDuplicates(int[] nums) {
     //判断空数组,提交检验的题库中存在空数组,需要特定返回
        if (nums.length==0){
            return 0;
        }
        //数组第一个元素一定是不重复的,所以单独获取
        int pare=nums[0];
        //统计不重复的数据,coutn=1是指第一个数组元素
        int count=1;
        //遍历数组,当数组中元素与pare不同时,将nums[count]替换成nums[i],pare等于nums[count],count增加1
        for (int i = 1; i <nums.length ; i++) {
            if (nums[i]!=pare){
                 nums[count]=nums[i];
                pare=nums[count];
                count++;
            }
        }
        return count ;
    }
}

题目比较简单,讨论区的答案都是大同小异,所以这道题目也没什么特别修改的地方。

  • LeetCode

    LeetCode(力扣)是一个全球极客挚爱的高质量技术成长平台,想要学习和提升专业能力从这里开始,充足技术干货等你来啃,轻松拿下 Dream Offer!

    164 引用 • 61 回帖
回帖
请输入回帖内容...