题目链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/
思路:题目要求不能使用额外的使用空间,只能原地修改数组。所以用cnt来记录修改后的长度就可以啦。因为题目说已按升序排列,所以就遍历的时候判断一下就可以了,看代码吧,太简单了,不做解释了。
上代码:
class Solution {
public int removeDuplicates(int[] nums) {
if (nums.length == 0) {
return 0;
}
int len = nums.length, cnt = 0;
int val = nums[0];
for (int i = 1; i < len; i++) {
if (val != nums[i]) {
nums[++cnt] = nums[i];
val = nums[i];
}
}
return cnt + 1;
}
}
该博客介绍了如何解决LeetCode上的一个问题——删除排序数组中的重复项。作者提供了一个简单的解决方案,利用Python实现,通过遍历数组并比较相邻元素来删除重复项,同时保持数组有序。代码简洁明了,不使用额外空间,直接在原数组上进行修改。
600





