我有一个 Java 中的 ArrayList
,其值为
4, 4, 3, 3, 5, 6
我需要找到最常见的值。如果多个值出现的次数相同,则返回最大的一个。
所以在上面的例子中,我需要返回值4。
private int getFrequentNumber(ArrayList<Integer> arr){
int popular = arr.get(0);
int count = 1;
int tempcount = 0;
int temp = 0;
for(int i = 0; i < arr.size(); i++) {
temp = arr.get(i);
tempcount = 0;
for(int j = 1; j < arr.size(); j++) {
if(temp == arr.get(j))
tempcount++;
}
if (tempcount > count) {
popular = temp;
count = tempcount;
}
}
return popular;
}
现在我有这段代码,因此它返回最常见的数字,但我需要帮助返回最大最常见的数字。
最佳答案
第 1 步:对 ArrayList<Integer> arr
进行快速排序;
第 2 步:对 ArrayList<Integer> arr
进行迭代正如您所做的那样。
关于java - 找到最大最频繁元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49462359/