题目描述:
读入一组整数,这组整数是按照从下到大的顺序排列的,他们的个数 N 是由用户输入的,最多不超过 20 个,然后这个程序对这个数组进行统计,把出现最多的的那个数组元素打印出来,如果有两个元素出现的次数相同,即并列第一,那么只打印较小的那个值
例如:
输入:
6
100 150 150 200 200 250
输出:
150
代码描述:
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
//输入n
int n=sc.nextInt();
//不能超过20个
if(n>=20){
return;
}
int max=0;//用于保存数组元素中次数出现最多的数字
//输入数组
int [] arr=new int[n];
for (int i = 0; i < arr.length; i++) {
arr[i]=sc.nextInt();
}
//存储出现最多的数组元素
int num=arr[0];
for (int i = 0; i <n-1; i++) {//下标从0开始
int count=0;//记录出现次数
if(arr[i]==arr[i+1]){
count++;
}
if(count>max){
max=count;
count=num;
num=arr[i];
}
}
System.out.println(num);
}
}