美文网首页
26. 删除有序数组中的重复项

26. 删除有序数组中的重复项

作者: 名字是乱打的 | 来源:发表于2022-01-08 22:16 被阅读0次

    一 题目:

    二 思路:

    比对法,每次找到一个和咱们要设置位置不一样的值

    • 记录当前正在设置值(需要被比较的值)的位置,只要后面的元素和他一样那就跳过
    • 直到找到下一个和它不一样的数字放在下一个位置,然后继续比对

    三:代码:

    class Solution {
        public int removeDuplicates(int[] nums) {
            int len = nums.length;
            if (len <=1){
                return len;
            }
            //输入:   nums = [0,0,1,1,1,2,2,3,3,4]
            //输出:5, nums = [0,1,2,3,4]
            int currSet=0;
            for (int i = 1; i < nums.length; i++) {
                if (nums[i]!=nums[currSet]){
                    currSet++;
                    nums[currSet]=nums[i];
                }
            }
            return currSet+1;
        }
    }
    

    相关文章

      网友评论

          本文标题:26. 删除有序数组中的重复项

          本文链接:https://www.haomeiwen.com/subject/roeycrtx.html