工作生活

1. 删除有序数组中的重复数据

2019-07-02  本文已影响0人  Loistein

描述

给定一个有序数组,删除数组中的重复数据,要求:

  1. 新数组中的每一个数据只出现1次
  2. 返回新数组的长度
  3. 不能开辟额外的内存空间

举例

给定A = [1,1,2],返回长度 = 2,新数组A'=[1,2]

代码

public class RemDupSorArrayI {
    
    public static int removeDuplicates(int[] nums) {
        if (nums.length == 0) {
            return 0;
        }   
        
        int index = 1;
        for (int i = 1; i < nums.length; i ++) {
            if (nums[i] != nums[index - 1]) {
                nums[index++] = nums[i];        
            }
        }       
        return index;
    }
    
    public static void main(String args[]) {
        int[] nums = {1,1,2,4,6,8,8};
        System.out.println(removeDuplicates(nums));
        
    }
}
上一篇下一篇

猜你喜欢

热点阅读