现在的位置: 首页 > 综合 > 正文

Remove duplicates from sorted array II

2017年12月23日 ⁄ 综合 ⁄ 共 282字 ⁄ 字号 评论关闭

比较简单,刚开始眼瞎没注意到是sorted,结果非搞个MAP来记录出现次数,囧

 

int removeDuplicates(int a[],int n)
{
	assert(a&&n>=0);
	int curNum=a[0];
	int delNum=0;
	int curCnt=1;
	for(int i=1;i<n;i++)
	{
		if(curNum==a[i])
		{
			curCnt++;
			if(curCnt<=2)
			{
				a[i-delNum]=a[i];
			}
			else
				delNum++;
		}
		else
		{
			curNum=a[i];
			curCnt=1;
			a[i-delNum]=a[i];
		}
	}
	return n-delNum;
}

 

抱歉!评论已关闭.