public class Solution {
public int majorityElement(int[] num) {
int ret=0;
int count=0;
for(int i=0;i<num.length;i++)
{
if(count==0)
{
ret = num[i];
count++;
}
else
{
if(ret == num[i] )
{
count++;
}
else
{
count--;
}
}
}
return ret;
}
}
解法有很多,较快的有二分的方法。。。。偷了下懒用了O(n)的方法,遍历一遍数组,众数出现次数在一半以上,那么坚持到最后的肯定会是众数
本文介绍了一种高效的O(n)方法来查找数组中的众数,即出现频率超过数组长度一半的元素。通过遍历数组并利用计数机制,该算法能够快速确定众数。
257

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



