题目描述
题目.png解题思路
可以将删除重复的元素理解成在数组中找不同元素。定义i和j两个变量,i初始值为0,是数组中第一个元素的索引,j初始值为1,是第二个元素的索引,从第二个元素开始遍历,找与索引为i的元素不同的元素(nums[i]!=nums[j]),如果找到了,将i的值加1,并且令nums[i]=nums[j]。遍历结束,返回i+1,即数组的长度。
java实现
public int removeDuplicates(int[] nums){
int len=nums.length;
if(len==1){
return len;
}
int i=0;
for(int j=1;j<len;j++){
if(nums[i]!=nums[j]){
i++;
nums[i]=nums[j];
}
}
return i+1;
}
网友评论