LeetCode26-简单-删除有序数组中的重复项
Posted 再吃一个橘子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode26-简单-删除有序数组中的重复项相关的知识,希望对你有一定的参考价值。
重要思想:
画图!! 自己体会 ——————
情况1:
情况2:
AC代码:
int removeDuplicates(int* nums, int numsSize)
//三指针
if(numsSize == 0)
return 0;
int i = 0,j = 1;
int dst = 0;
while(j < numsSize)
if(nums[i] == nums[j])
++j;
else if(nums[i] != nums[j])
nums[dst] = nums[i];
++dst;
i = j;
++j;
nums[dst] = nums[i];
++dst;
return dst;
思路2:双指针
int removeDuplicates(int* nums, int numsSize)
int dst=0,src=1;
int j=0;
while(src < numsSize)
if(nums[src] == nums[dst])
j = src;
while(j < numsSize)
nums[j - 1] = nums[j];
j++;
numsSize--;
else
dst++;
src++;
return numsSize;
以上是关于LeetCode26-简单-删除有序数组中的重复项的主要内容,如果未能解决你的问题,请参考以下文章
Leetcode刷题100天—26. 删除有序数组中的重复项(数组)—day76
Leetcode刷题100天—26. 删除有序数组中的重复项(数组)—day76