就简单统计一个数组中个元素出现的次数,以及求最大次数,其思想就是将数组先排序,再将其转入到一个Map中,然后再将相应的值取出来
import java.util.*;
public class ShuZu{
public static void main(String[] args){
int[] x={10,20,10,30,20,50,20};
Arrays.sort(x);
Map map=new TreeMap();
int count=1; //保存元素出现次数
for(int i=0;i<x.length-1;i++){
if(x[i]==x[i+1]){
count++;
map.put(x[i],count);
}
else{
count=1;
map.put(x[i+1],count);
}
}
if(x[0]!=x[1]) map.put(x[0],1); //至此数组切换成字典完成
Iterator interator=map.keySet().iterator(); //迭代
int maxNumber=0;
int maxCount=0;
while(interator.hasNext()){
int key=(Integer)interator.next();
int maxValue=(Integer)map.get(key);
if(maxValue>maxCount){
maxCount=maxValue;
maxNumber=key;
}
}
System.out.println("出现最多次数的是"+maxNumber+", 出现了"+maxCount+"次");
}
}
java数组元素重复次数及重复次数的最大值
最新推荐文章于 2021-12-30 14:35:08 发布