学习数据接构和算法的第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;
}
相关推荐
Hello World . .几秒前
数据结构:栈和队列
c语言·开发语言·数据结构·vim
uesowys2 分钟前
Apache Spark算法开发指导-Decision tree classifier
算法·决策树·spark
woodykissme5 分钟前
倒圆角问题解决思路分享
笔记·学习·工艺
池央10 分钟前
贪心算法-最大数
算法·贪心算法
黎雁·泠崖11 分钟前
Java核心基础API学习总结:从Object到包装类的核心知识体系
java·开发语言·学习
Yvonne爱编码14 分钟前
JAVA数据结构 DAY1-集合和时空复杂度
java·数据结构·python
iAkuya16 分钟前
(leetcode)力扣100 57电话号码的字母组合(回溯)
算法·leetcode·深度优先
香芋Yu28 分钟前
【机器学习教程】第02章:线性代数基础【下】
学习·机器学习
m0_7369191029 分钟前
模板元编程性能分析
开发语言·c++·算法
Terio_my31 分钟前
简要 Java 面试题学习
java·开发语言·学习