学习数据接构和算法的第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;
}
相关推荐
水木姚姚几秒前
C++ begin
开发语言·c++·算法
浅川.252 分钟前
xtuoj 素数个数
数据结构·算法
jyyyx的算法博客16 分钟前
LeetCode 面试题 16.18. 模式匹配
算法·leetcode
Xudde.26 分钟前
friendly靶机渗透
笔记·学习·安全·web安全·php
uuuuuuu27 分钟前
数组中的排序问题
算法
Stream30 分钟前
加密与签名技术之密钥派生与密码学随机数
后端·算法
Stream32 分钟前
加密与签名技术之哈希算法
后端·算法
少许极端1 小时前
算法奇妙屋(十五)-BFS解决边权为1的最短路径问题
数据结构·算法·bfs·宽度优先·队列·图解算法·边权为1的最短路径问题
拼好饭和她皆失1 小时前
Java学习---Arrays类
java·开发语言·学习
代码游侠1 小时前
学习笔记——GDB调试工具
linux·开发语言·笔记·学习