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

    Problem:

    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.

    Summary:

    去除已排序数组中得重复数字,并返回最终数组所含数字个数。

    Solution:

    用两个指针,指针i遍历数组,指针j标记当前已去重数组的结尾位置,每遍历到一个新数字将其放入j处。

     1 class Solution {
     2 public:
     3     int removeDuplicates(vector<int>& nums) {
     4         int len = nums.size();
     5         if (!len) {
     6             return 0;
     7         }
     8         
     9         int j = 1;
    10         for (int i = 1; i < len; i++) {
    11             if (nums[i - 1] != nums[i]) {
    12                 nums[j++] = nums[i];
    13             }
    14         }
    15         
    16         return j;
    17     }
    18 };
  • 相关阅读:
    demo12-回到顶部
    demo11-友情链接
    demo10-超链接标签
    demo09-程序员练习
    demo08-图片标签
    demo07-盒子标签
    demo06-字体标签
    demo05-换行标签
    转&nbsp;j2ee&nbsp;.线程池.对象池,连接池
    几种开源Java&nbsp;Web容器线程池…
  • 原文地址:https://www.cnblogs.com/VickyWang/p/6236092.html
Copyright © 2011-2022 走看看