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

    title
     描写叙述
     Follow up for ”Remove Duplicates”: What if duplicates are allowed at most twice?

    For example, Given sorted array A = [1,1,1,2,2,3],

     Your function should return length = 5, and A is now [1,1,2,2,3]


    #include <iostream>
    
    using namespace::std;
    
    int removeDuplicates(int *A, int length){
        if(length<=2) return length;
        
        int n=2;
        for(int i=2; i < length; i++){
            // 推断仅仅要有一个不相等 那么就不符合三连等的情况
            if(A[n-2]!=A[n-1] || A[n-2]!=A[i]){
                A[n++] = A[i];
            }
        }
        return n;
    }
    
    int main(int argc, const char * argv[])
    {
    
        // insert code here...
        std::cout << "Hello, World!
    ";
        
        int n = 17+1;
        int A[]={1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,3,3};
        int resu = removeDuplicates(A, n);
        for(int i=0; i < resu; i++)
            cout << A[i] << " ";
        return 0;
    }
    


  • 相关阅读:
    IDE-常用插件
    Go-竞态条件-锁
    Go-发送邮件
    复刻网络Yum源配置为本地Yum源使用
    测试
    九.查找算法
    九.多线程-PDF笔记
    八.设计模式
    八.排序算法:复杂度
    七.注解
  • 原文地址:https://www.cnblogs.com/tlnshuju/p/7141268.html
Copyright © 2011-2022 走看看