主元素
题目描述:给定一个整型数组,找出主元素,它在数组中的出现次数严格大于数组元素个数的二分之一。
解题思路:此题属于简单题,只需要注意计数器的细节就可以了;
int majorElements(vector<int> nums)
{
int major_length = floor(nums.size() / 2);
sort(nums.begin(), nums.end());
int count = 1;
int tmp = nums[0];
for (size_t i = 1; i < nums.size(); i++)
{
if (nums[i] == tmp)
{
count++;
if (count > major_length)
{
return nums[i];
}
}
else
{
count = 0;
tmp = nums[i];
count = 1;
}
}
}