leetcode Majority Element 寻找出现次数最多元素

给定一个大小n的数组,求出现次数大于⌊ n/2 ⌋的元素:假定数组总是存在而且这样的元素总是存在:

int com(const void *s1,const void *s2){
int *p1=(int*)s1;
int *p2=(int *)s2;
return *p1-*p2;
}
int majorityElement(int* nums, int numsSize) {
	qsort(nums,numsSize,sizeof(int),com);//按小到大对数组排序
	int k=1;
	for(int i=0;i<numsSize-1;i++)
	{	if(nums[i]==nums[i+1]){k++;if(k>numsSize/2)return nums[i];else continue;}//如果连续相等
	else k=1;}
	return nums[0];
}


你可能感兴趣的:(leetcode Majority Element 寻找出现次数最多元素)