zoukankan      html  css  js  c++  java
  • 26 -从排序数组中删除重复项

    给定排序的数组nums,就地删除重复项,使每个元素只出现一次并返回新的长度。

    不要为另一个数组分配额外的空间,你必须这样做修改输入数组就地用O(1)额外的内存。

    例1:

    鉴于nums = [1,1,2],你的函数应该返回length = 2,前两个元素分别为12

    例2:

     鉴于nums = [0,0,1,1,1,2,2,3,3,4],您的函数应返回length= 5nums前五个元素 01234

    解法:
     1 为数组设置下标索引i=1,j=0;
     2 在以i为for循环光标向下走当下标为j的数和下标为i的数不相等时将下标为i的数赋给下标为j的数的后一位。
     3 public   int removeDuplicates(int[] nums) {
     4         int i,j=0;
     5         for ( i=1;i<nums.length;i++)
     6         {
     7             if (nums[i]!=nums[j]){
     8                 j++;
     9                 nums[j]=nums[i];
    10             }
    11         }
    12         return j+1;
    13     }
     
     
  • 相关阅读:
    有关乞讨的人
    雪之国
    Direction
    Qt表格
    单例模式
    工作
    Qt模型model、视图view、代理
    Qt数据库sqlite
    QDateTime
    跨工程传输数据
  • 原文地址:https://www.cnblogs.com/dloading/p/10701591.html
Copyright © 2011-2022 走看看