zoukankan      html  css  js  c++  java
  • Remove Duplicates from Sorted Array

    package cn.edu.xidian.sselab.array;

    /**
     *
     * @author zhiyong wang
     * title:Remove Duplicates from Sorted Array
     * content:
     *  Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length.
     *  Do not allocate extra space for another array, you must do this in place with constant memory.
     *  For example,
     *  Given input array nums = [1,1,2],
     *  Your function should return length = 2, with the first two elements of nums being 1 and 2 respectively. It doesn't matter what you leave beyond the new length.
     */
    public class RemoveDuplicatesfromSortedArray {

        //这个题与RemoveElement几乎相同,因为是已经排好序的数组,比较条件改成相邻的两个数进行比较
        //同样是统计double的数字的对数,每个数前移相同的数字的个数
        //不过比较的时候要注意问题,不要越界,这里特别主要,nums里面个数小于2个时候,不做任何处理,只有多于1个时才会进行比较
        public int removeDuplicates(int[] nums){
            int length = nums.length;
            int count = 0;
            if(length>1){
                for(int i=1;i<length;i++){
                    if(nums[i-1] == nums[i]){
                        count++;
                    }else{
                        nums[i-count] = nums[i];
                    }
                }
            }
            return length-count;
        }
    }

  • 相关阅读:
    Uva 10719 Quotient Polynomial
    UVa 11044 Searching for Nessy
    Uva 10790 How Many Points of Intersection?
    Uva 550 Multiplying by Rotation
    Uva 10916 Factstone Benchmark
    Uva 10177 (2/3/4)D Sqr/Rects/Cubes/Boxes?
    Uva 591 Box of Bricks
    Uva 621 Secret Research
    Uva 10499 The Land of Justice
    Uva 10014 Simple calculations
  • 原文地址:https://www.cnblogs.com/wzyxidian/p/5062185.html
Copyright © 2011-2022 走看看