zoukankan      html  css  js  c++  java
  • 26.删除排序数组中的重复元素(26. Remove Duplicates from Sorted Array)

    题目:

    给定一个排序的数组,删除重复的位置,使每个元素只显示一次并返回新的长度。

    不要为另一个数组分配额外的空间,您必须使用常量内存来执行此操作。

    例如,
    给定输入数组nums = [1,1,2]

    您的函数应返回长度= 2,与前两个元素NUMS12分别。无论你离开新的长度什么都不重要。

    思路:

    (1)若数组的长度为0或者为1,则数组中不会存在重复的元素,此时直接返回数组的长度即可;
    (2)若数组的长度大于1,则用result来标记未重复元素的下标,result从零开始;从数组的第一个元素开始和nums[result]比较,若nums[i]!=nums[result]则则将result下移一位,并将nums[i]的值赋给nums[result](即nums[++result]=nums[i])然后将i移下下一位;若nums[i]==nums[result],则将i移向下一位;直到i==nums.lenth;
    (3)最后返回result+1;

    代码:

     1 class Solution {
     2     public int removeDuplicates(int[] nums) {
     3 
     4         if(nums.length==0||nums.length==1){//若数组长度为0或者为1则直接返回数组的长度即可;
     5             
     6             return nums.length;
     7             
     8         }
     9 
    10         int result=0;//原数组中未重复元素的数目
    11         
    12         for(int i=0;i<nums.length;i++){
    13             
    14             if(nums[i]!=nums[result]){
    15                 
    16                 nums[++result]=nums[i];   
    17                 
    18             }
    19         }
    20         
    21         return result+1;
    22     }
    23 }
  • 相关阅读:
    关于DOM与BOM
    常用单位及颜色表
    关于Grid
    form表单
    自我介绍
    python——3种字符串反转方法
    JavaScript 正则表达式
    关于JavaScript的DOM和BOM
    CSS颜色表示的几种方式
    CSS的常用单位介绍
  • 原文地址:https://www.cnblogs.com/xuzhiyuan/p/7660611.html
Copyright © 2011-2022 走看看