• 26 Remove Duplicates from Sorted Array


    26 Remove Duplicates from Sorted Array

    链接:https://leetcode.com/problems/remove-duplicates-from-sorted-array/
    问题描写叙述:
    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.

    Hide Tags Array Two Pointers

    去除排序好的数组中i的反复元素。

    class Solution {
    public:
        int removeDuplicates(vector<int>& nums) {
            if(nums.size()<2)return nums.size();
            int result=0;
            for(int i=1;i<nums.size();i++)
            {
              if(nums[i]!=nums[result])
                  nums[++result]=nums[i];
            }
            return result+1;
        }
    };
    

    在vector中还有更简单的做法,能够利用unique函数。

    class Solution {
    public:
        int removeDuplicates(vector<int>& nums) {
            nums.erase( unique(nums.begin(), nums.end() ), nums.end() );
            return nums.size();
        }
    };
    
  • 相关阅读:
    异常总结
    反射
    面试题
    继承多态接口
    JAVA面向对象变成学习!
    学生管理系统---三层架构
    Secondary NameNode
    Hadoop之HDFS
    大数据相关概念二
    大数据相关概念
  • 原文地址:https://www.cnblogs.com/yxwkf/p/5209216.html
Copyright © 2020-2023  润新知