【发布时间】:2020-08-29 21:32:03
【问题描述】:
Arrays.sort(arr);
int max=1,m=1;
for(int i=1;i<arr.length;i++){
if(arr[i]==arr[i-1]){
max++;
}
else{
if(max>m){
m=max;
max=1;
}
}
}
if(max>m){
m=max;
}
return m;
这是我做的一个功能。这应该返回最频繁出现的元素的次数。例如,如果数组是 1,2,2,3,3,3 ,那么它应该返回 3。但是在许多情况下它会失败,例如对于输入 1 2 3 1 2 3 3 3,此代码会失败并返回 5,这是错误的输出。
【问题讨论】: