【编程练习】remove-duplicates-from-sorted-array

remove-duplicates-from-sorted-array

时间限制:C/C++ 1秒,其他语言 2秒
空间限制:C/C++ 32768K,其他语言 65536K
64bit IO Format: %lld
本题可使用本地IDE编码,不做跳出限制,编码后请点击“保存并调试”按钮进行代码提交。


题目描述

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 A =[1,1,2],
Your function should return length =2, and A is now[1,2].


代码

class Solution {
public:
    int removeDuplicates(int A[], int n) {
        if(n<=0)
            return 0;
        int i = 0;
        for(size_t j=1;j<n;j++){
            if(A[i] != A[j])
                A[++i]=A[j];
        }
        return i+1;
    }
};

结果

这里写图片描述

猜你喜欢

转载自blog.csdn.net/sofia_m/article/details/81105100