• Java—Remove Deplicates from Sorted Array(顺序数组中去重位置)


    题目

    在这里插入图片描述

    思路

    1. 定义index变量覆盖新数组的索引,从0开始;
    2. 遍历数组,索引i从1开始,如果arr[index] != arr[i],则将原数组arr[i]赋值给新索引位置arr[++index];
    3. 遍历到最后返回index时,需要将其值加1,因为索引是从0开始。
      时间复杂度为o(n),空间复杂度为o(1)

    代码

    private static int removeDuplicates(int[] arr) {
    	//考虑空数组
    	if(arr.length == 0)
    		return 0;
    	int index = 0;
    	for (int i = 1; i < arr.length; i++) {
    		if (arr[index] != arr[i]) {
    			arr[++index] = arr[i];
    		}
    	}
    	return index + 1;
    }
    
  • 相关阅读:
    列表
    *
    Model/View
    文件
    提示用户输入并获得输入
    编码
    使用静态QT库编译的程序不显示中文
    rm命令
    高阶函数
    jquery checkbox 操作
  • 原文地址:https://www.cnblogs.com/Andya/p/12473343.html
Copyright © 2020-2023  润新知