学习数据接构和算法的第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;
}
相关推荐
悠哉悠哉愿意2 分钟前
【单片机学习笔记】第十二届国赛经验复盘
笔记·单片机·嵌入式硬件·学习
m0_662577972 分钟前
模板编译期哈希计算
开发语言·c++·算法
m0_662577973 分钟前
C++代码静态检测
开发语言·c++·算法
阿贵---3 分钟前
编译器命令选项优化
开发语言·c++·算法
minji...4 分钟前
Linux 进程间通信(一)进程间通信与匿名管道
linux·运维·服务器·数据结构·数据库·c++
add45a4 分钟前
分布式计算C++库
开发语言·c++·算法
zxm85134 分钟前
UV使用及UV与Anaconda的区别
大数据·学习·机器学习·uv
Shining05967 分钟前
AI 编译器系列(五)《拓展 Triton 深度学习编译器——DLCompiler》
人工智能·深度学习·学习·其他·架构·ai编译器·infinitensor
码农的小菜园9 分钟前
Java线程池学习笔记
java·笔记·学习
2401_8942419210 分钟前
基于C++的数据库连接池
开发语言·c++·算法