26. Remove Duplicates from Sorted Array
程序员文章站
2024-02-17 12:25:04
...
题目分析
原题链接,登陆 LeetCode 后可用
给定一个有序数组,在原数组中删除重复出现的数字,使得每个元素只出现一次,并且返回新的数组的长度。并且不要使用额外的数组空间,空间复杂度为 O(1)。这里的删除并非严格意义上的删除,比如一个数组为 A,其值为 [1,1,2],程序执行结束后,返回的长度应该为2,并且数组 A 的前两个元素应该为1和2。
代码
public class Solution {
public int removeDuplicates(int[] nums) {
if(nums == null || nums.length == 0) {
return 0;
}
if(nums.length == 1 ) {
return 1;
}
int length = 0;
for(int i = 0, j = 1; j < nums.length; i++, j++) {
if(nums[i] == nums[j]) {
i--;
} else {
nums[i + 1] = nums[j];
length += 1;
}
}
return length + 1;
}
}
上一篇: Java中遍历Map的几种方法
推荐阅读
-
26. Remove Duplicates from Sorted Array
-
26. Remove Duplicates from Sorted Array
-
26. Remove Duplicates from Sorted Array
-
#26. Remove Duplicates from Sorted Array
-
26. Remove Duplicates from Sorted Array
-
26. Remove Duplicates from Sorted Array
-
leetcode82: Remove Duplicates from Sorted ListII
-
【一天一道LeetCode】#26. Remove Duplicates from Sorted Array
-
LeetCode 83. Remove Duplicates from Sorted List
-
83. Remove Duplicates from Sorted List