首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >LeetCode题组:第26题-删除排序数组中的重复项

LeetCode题组:第26题-删除排序数组中的重复项

作者头像
K同学啊
发布于 2020-04-10 10:19:07
发布于 2020-04-10 10:19:07
79200
代码可运行
举报
运行总次数:0
代码可运行

1.题目:删除排序数组中的重复项

给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。(注意这里提到了排序数组,也就是说数组是有序的。如果无序,我们又该如何解决这个问题呢,我下面给出了无序数组的解决方案,当然也适用于有序数组)

不要使用额外的数组空间,你必须在原地修改输入数组 并在使用 O(1) 额外空间的条件下完成。

示例 1:

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

示例 2:

给定 nums = [0,0,1,1,1,2,2,3,3,4], 函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。 你不需要考虑数组中超出新长度后面的元素。


2.我的解答

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>

int removeDuplicates(int* nums, int numsSize);

int removeDuplicates(int* nums, int numsSize){
	int length = numsSize;
	for(int i=0;i<length-1;i++){
		for(int j=i+1; j<length; j++){
			//若发现相等的两个数,则将后一个数删除 
			if(nums[i]==nums[j]){
				for(int k=j; k<length-1; k++){
					nums[k]=nums[k+1];
				}
				length--;
				j--;
			}
		}
	}
	return length;
}

int main(){
	int nums[3] = {1,1,1};
	printf("%d",removeDuplicates(nums,3));
	return 0;
} 
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/04/08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
​LeetCode刷题实战26:删除排序数组中的重复项
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
程序员小猿
2021/01/20
3120
​力扣删除排序数组中的重复项
不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。
花落花相惜
2021/11/20
1.4K0
​LeetCode 26:删除排序数组中的重复项 Remove Duplicates from Sorted Array
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
爱写bug
2019/07/15
4570
【每日一题】【leetcode】6. 数组-删除排序数组中的重复项
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1)额外空间的条件下完成。
aneutron
2022/08/10
4030
(Leetcode 2021 刷题计划) 26. 删除有序数组中的重复项
给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。
windism
2021/04/19
4520
leetcode刷题(25)——26. 删除排序数组中的重复项
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
老马的编程之旅
2022/06/22
1660
Leetcode打卡 | No.26 删除排序数组中的重复项
欢迎和小詹一起定期刷leetcode,每周一和周五更新一题,每一题都吃透,欢迎一题多解,寻找最优解!这个记录帖哪怕只有一个读者,小詹也会坚持刷下去的!
小小詹同学
2019/11/12
4550
Leetcode No.26 删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
week
2022/01/07
2250
leetcode刷题(107)——26. 删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
老马的编程之旅
2022/06/22
1860
LeetCode 26. 删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
村雨遥
2020/05/06
4150
【leetcode系列】26. 删除排序数组中的重复项
https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/description/
前端迷
2019/07/23
3870
【leetcode系列】26. 删除排序数组中的重复项
LeetCode153|删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
码农王同学
2021/01/15
3960
LeetCode题目26:删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
二环宇少
2020/08/13
6640
LeetCode题目26:删除排序数组中的重复项
LeetCode-26 删除排序数组中的重复项
今天我们学习第26题删除排序数组中的重复项,这是一道简单题。像这样数组的题目经常作为面试题来考察面试者算法能力和写代码能力,因此最好能手写出该题。下面我们看看这道题的题目描述。
用户3470542
2019/06/26
6170
LeetCode-26 删除排序数组中的重复项
【算法-初级-数组】删除排序数组中的重复项(多语言版实现)
给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。
归子莫
2022/01/12
4090
【算法-初级-数组】删除排序数组中的重复项(多语言版实现)
☆打卡算法☆LeetCode 26、删除有序数组中的重复项 算法解析
“将给定的有序数组删除重复出现的元素,使每个元素只出现一次,返回删除后数组的长度。”
恬静的小魔龙
2022/08/07
3640
☆打卡算法☆LeetCode 26、删除有序数组中的重复项  算法解析
Leetcode—— 删除排序数组中的重复项——C语言
给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。
小李很执着
2024/06/15
1840
Leetcode—— 删除排序数组中的重复项——C语言
p26删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
东边的大西瓜
2022/05/05
3560
LeetCode 进阶之路 - 删除排序数组中的重复项
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。 示例 2: 给定 nums = [0,0,1,1,1,2,2,3,3,4], 函数应该返回新的长度 5,
Li_XiaoJin
2022/06/10
2640
leetcode-26删除有序数组中的重复项(双指针)「建议收藏」
给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。
全栈程序员站长
2022/09/22
3130
推荐阅读
相关推荐
​LeetCode刷题实战26:删除排序数组中的重复项
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档