Leetcode初学——删除排序数组中的重复项

题目:

我们简单分析一下这道题目

他要求我们不使用额外的数组空间,也就是我们只能在原数组上修改

本质上,就是在原数组上删除重复数字

贴上代码:

class Solution {
    public int removeDuplicates(int[] nums) {
        int count=0;
        if(nums.length<=1) return nums.length;
        int pre=nums.length-2;
        int cur=nums.length-1;
        while(pre>=0){
            if(nums[pre]==nums[cur]){
                int temp=cur;
                count++;
                while(temp<nums.length-1){
                    nums[temp]=nums[temp+1];
                    temp++;
                }
            }
            pre--;
            cur--;
        }
        return nums.length-count;
    }
}

结果如下:

发布了25 篇原创文章 · 获赞 3 · 访问量 429

猜你喜欢

转载自blog.csdn.net/qq_39377543/article/details/104086119