Leetode第26题:从已排序数组中移除重复数字
1.解决思路:整个数组循环一次,循环使用i,同时设定一个j,表示新的没有重复的数组最末尾。比较当前nums[i]与nums[j]是否相等,如果相等,也就是重复,继续循环,j不变。否则,nums[++j]=nums[i].
2.代码实现
int removeDuplicates(int* nums, int numsSize) {
int i,j;
if(numsSize == 0)
{
return 0;
}
for(i = 0, j = 0; i < numsSize; i++){
if(nums[i] != nums[j]){
nums[++j] = nums[i];
}
}
return j+1;
}
3.最后运行时间如下图
近期评论