题解 | #数组中出现次数超过一半的数字#
数组中出现次数超过一半的数字
https://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163
class Solution {
public:
int MoreThanHalfNum_Solution(vector<int> numbers) {
for(size_t i = 1;i<numbers.size();i++)
{
for(int j = i;j>0;j--)
{
if(numbers[j]<numbers[j-1])
{
swap(numbers[j],numbers[j-1]);
}
}
}
int next = 1;
for (size_t l = 0;l<numbers.size() ;l = next) {
int _size = 1;
while(numbers[l] == numbers[next++])
{
_size++;
}
if(_size>numbers.size()/2)
{
return numbers[l] ;
}
}
return 0;
}
};


