分析:实际是去重
三指针:dst: 去重后数组实际长度
begin:第一个重复数字下标
end: 最后一个重复数字下标
int moveDeplicates(int* num,int numsize)
{
if(numsize==0)//判断数组是否为空
{
return 0;
}
else
{
int begin=0,end=1,dst=0;
while(end<numsize)
{
if(num[begin]==num[end])//如果两个元素一样,那么移动end下标直到不一样
{
end++;
}
else
{
num[dst]=num[begin];
begin=end;//bengin直接越过重复的元素
end++;
dst++;
}
}
num[dst]=num[begin];//到最后时begin=numsize-1
return dst;
}
}