删除有序数组中重复的元素

删除有序数组中重复的元素 ii

http://www.nowcoder.com/questionTerminal/567f420f12ed4069b7e1d1520719d409

一个通用的思路:用index记录新数组的下标,遍历旧数组,如果当前元素与A[index-2]的元素不相同,则表示这个数应该放入新数组。(其中2可以变为1,3,4...)代码如下:

//
// Created by jt on 2020/9/24.
//
class Solution {
public:
    int removeDuplicates(int A[], int n) {
        if (n <= 2) return n;
        int idx = 2;
        for (int i = 2; i < n; ++i) {
            if (A[idx-2] != A[i]) {
                A[idx++] = A[i];
            }
        }
        return idx;
    }
};
刷遍天下无敌手 文章被收录于专栏

秋招刷题历程

全部评论

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
02-25 11:29
产品经理
牛客444597598号:兄弟 我只能说如果想找产品经理这种简历 基本就是毕业失业了 你这连实习都找不到的 简历跟产品经理一点都没有关系,你可以去搜搜产品的模版吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务