代码片段:
int MoreThanHalfNum_Solution(vector<int> numbers) {
int length = numbers.size();
if(length<=0){
return 0;
}
//判断数组中哪个数出现的频率最高
int num = numbers[0],count =1;
for (int i=1;i<length;i++){
if(num==numbers[i]){
count++;
}
else{
count--;
}
if(count ==0){
num=numbers[i];
count =1;
}
}
return num;
}

本文介绍了一种在未排序整数数组中寻找出现次数超过一半的数字的算法。通过遍历数组并使用计数方式,该算法能有效地找出频率最高的数字。
444

被折叠的 条评论
为什么被折叠?



