【删除有序数组中的重复项】

给你一个 升序排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。

复制代码
nums = [0,0,1,1,1,2,2,3,3,4]
5, nums = [0,1,2,3,4]

点击跳转

c 复制代码
int removeDuplicates(int* nums, int numsSize){
    int begin = 0;
    int end = 0;
    // 0,0,1,1,1,2,2,3,3,4
//begin        0
//end                    1 
    while(end<numsSize){
        if(nums[end] == nums[begin]){
            nums[begin] = nums[end];
            end++;
        }else{
            begin++;
            nums[begin] = nums[end];
            end++;
        }
    }
    return begin+1;
}
c 复制代码
int removeDuplicates(int* nums, int numsSize){
    int begin = 0;
    int end = 0;
    // 0,0,1,1,1,2,2,3,3,4
//begin        0
//end                     1 
    while(end<numsSize){
        if(nums[end] == nums[begin]){
            // nums[begin] = nums[end];
            end++;
        }else{
            begin++;
            nums[begin] = nums[end];
            end++;
        }
    }
    return begin+1;
}
c 复制代码
int removeDuplicates(int* nums, int numsSize){
    int begin = 0;
    int end = 0;
    // 0,0,1,1,1,2,2,3,3,4
//begin        0
//end                    1 
    while(end<numsSize){
        if(nums[end] == nums[begin]){
            // nums[begin] = nums[end];
            end++;
        }else{
            begin++;
            nums[begin] = nums[end];
            // end++;
        }
    }
    return begin+1;
}
c 复制代码
int removeDuplicates(int* nums, int numsSize){
    int begin = 0;
    int end = 1;

    // [0,0,1,1,1,2,2,3,3,4]
// begin        0
// end                      1
    while(end<numsSize){
        if(nums[end] == nums[begin]){
            end++;
        }else{
            begin++;
            nums[begin] = nums[end];
            end++;
        }
    }
    return begin+1;
}
相关推荐
我爱C编程1 小时前
基于Qlearning强化学习的1DoF机械臂运动控制系统matlab仿真
算法
chao_7891 小时前
CSS表达式——下篇【selenium】
css·python·selenium·算法
chao_7891 小时前
Selenium 自动化实战技巧【selenium】
自动化测试·selenium·算法·自动化
YuTaoShao1 小时前
【LeetCode 热题 100】24. 两两交换链表中的节点——(解法一)迭代+哨兵
java·算法·leetcode·链表
怀旧,1 小时前
【数据结构】8. 二叉树
c语言·数据结构·算法
泛舟起晶浪1 小时前
相对成功与相对失败--dp
算法·动态规划·图论
地平线开发者2 小时前
地平线走进武汉理工,共建智能驾驶繁荣生态
算法·自动驾驶
IRevers3 小时前
【自动驾驶】经典LSS算法解析——深度估计
人工智能·python·深度学习·算法·机器学习·自动驾驶
前端拿破轮3 小时前
翻转字符串里的单词,难点不是翻转,而是正则表达式?💩💩💩
算法·leetcode·面试
凤年徐3 小时前
【数据结构与算法】203.移除链表元素(LeetCode)图文详解
c语言·开发语言·数据结构·算法·leetcode·链表·刷题