学习数据接构和算法的第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;
}
相关推荐
木井巳21 分钟前
【动态规划: 路径问题】不同路径
java·算法·leetcode·动态规划
外收内放27 分钟前
FastAPI猜字谜实战(4):让AI主持人开口
开发语言·python·学习·fastapi
CQU_JIAKE33 分钟前
10.25【A】
数据结构·算法
叶子野格38 分钟前
《JAVA学习:前置知识》
学习
greencherry_1 小时前
大连模屿石膏课模具配比全固定,调色浇注之外还缺什么?
算法·生活
小猪佩奇TONY1 小时前
Linux 内核学习(19) --- linux swap 机制
linux·学习·swap·kswapd
晒太羊的猫1 小时前
hot100子串
java·算法·leetcode
andrsted1 小时前
企业培训时间难统一?练题簿让在线免费刷题与培训考核更好安排
学习·微信小程序·小程序·学习方法·刷题
李航19832 小时前
虚拟盖房子,在游戏中学习房子的建造过程
人工智能·学习·游戏·计算机视觉·ai编程
霍霍的袁2 小时前
【C++11】左值右值引用与移动语义详细笔记(左值右值、右值引用、移动构造、移动赋值、引用折叠、万能转发)
c++·笔记·学习·visual studio