当前位置 : 主页 > 手机开发 > ROM >

LeetCode第二十六题-删除数组重复元素

来源:互联网 收集:自由互联 发布时间:2021-06-10
Remove Duplicates from Sorted Array 问题简介:给定一个有序的数组,删除数组中的重复元素,返回的是不重复元素的个数n,传入的数组nums的前n个值应变为不重复元素 举例: 1: 给定的数组 = [1,1

Remove Duplicates from Sorted Array

问题简介:给定一个有序的数组,删除数组中的重复元素,返回的是不重复元素的个数n,传入的数组nums的前n个值应变为不重复元素

举例:

1:

给定的数组 = [1,1,2],

返回长度n = 2,并且nums前两个值为[1,2]

2:

给定数组 = [0,0,1,1,1,2,2,3,3,4],

返回长度n = 5, 并且nums的前5个值为[0,1,2,3,4]

解法一:

笨重的解法。。。通过set元素不重复将nums值传入set,再对nums赋值

分享图片

解法二:

定义两个变量,i,j,遍历数组,i用来表示不重复的数字索引,j为当前遍历到的索引,当nums[i] != nums[j] 即表示不重复,将记录不重复的值,i的索引加1

分享图片

复杂度分析:

时间复杂度 : O(n)遍历一遍

空间复杂度:O(1) 定义的空间为定值

Space complexity : O(1)O(1).

小白刷题之路,请多指教— — 要么大器晚成,要么石沉大海

分享图片

网友评论