学习数据接构和算法的第11天

题目讲解

删除有序数组中的重复项

去重

​ 给你一个有序数组nums ,请你原地·删除重复出现的元素,使没个元素值出现一次,返回删除后数组的长度

​ **注意:**不要使用额外的数组空间,你·必须在原地修改输入数组并使用O(1)额外空间的条件完成

eg:

​ 输入:nums=[1,1,2]

​ 输出:2,nums=[1,2]

解释:函数应该返回新的长度为2,并且原数组nums的前两个元素被修改为1,2。不需要考虑新数组中超出新长度后面的元素

c 复制代码
#include<stdio.h>
int main()
int removeDuplicates(int* nums, int numssize)
	if(numsSize==0)
        return 0;
   int i=0, j=1;
	int dst = 0;
	while(j<numsSize)
    {
		if(nums[i]== nums[j])
        {
++j;
        }
    }
else
{
	nums[dst]= nums[i];
	++dst;
	++j;
	i=j;
}
    }
	nums[dst]=nums[i];
	++dst;
	return dst;
}
相关推荐
周可温8411 分钟前
动手学RAG
算法
hssfscv2 分钟前
软件设计师 试题三 面向对象——UML事物、关系、图
笔记·学习·uml
EnglishJun2 分钟前
ARM嵌入式学习(十三)--- IMX6ULL串口
arm开发·学习
周可温8413 分钟前
Transformer 深度理解与动手实现
算法
扶摇接北海1766 分钟前
洛谷:B4488 [语言月赛 202602] 甜品食用
数据结构·c++·算法
wubba lubba dub dub7508 分钟前
第四十周学习周报
学习
直有两条腿10 分钟前
【机器学习】K-Means 算法
算法·机器学习·kmeans
xuhaoyu_cpp_java11 分钟前
XML学习
xml·java·笔记·学习
A923A11 分钟前
【洛谷刷题 | 第十天】
算法·洛谷·sprintf·sscanf
放下华子我只抽RuiKe512 分钟前
深度学习-04-NLP项目实战
人工智能·深度学习·学习·自然语言处理·openclaw·development