题目
解题思路:循环迭代
- 首先最简单的是应该先分为二个部分,先是计算新的长度,然后在去修改数组
- 计算新的长度应该没人不会吧,就是遍历一边数组就可以了
- 修改数组的话因为题目不让使用额外的数组空间,所以也变得有一点点难度,所以这里我们就可以去每找到一个不同的元素时,用计数的值减一就是此时应该被取代的位置。
代码
class Solution {
public int removeDuplicates(int[] nums) {
int count=1;
for(int i=1; i<nums.length; i++){
if(nums[i]!=nums[i-1]){
count++;
nums[count-1]=nums[i];
}
}
return count;
}
}
不懂就问