找出一个数组中出现次数最多的那个元素
输入
第一行输入一个整数n(不大于20) 第二行输入n个整数,
输出
找出n个整数中出现次数最多的那个整数,如果有多个,输出最先出现的那个
样例
输入
4 1 2 2 3
输出
2
代码
#include <bits/stdc++.h>
using namespace std;
int a[110];
int main()
{
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
int max=-100;
int ret=0;//这个数是什么
//把max定义的越小,这样能保证之后大于它的数能把它替换
for(int i=1;i<=n;i++)
{
int cnt=0;//出现了几次
for(int j=1;j<=n;j++)
{
//双重循环枚举那个数出现次数有几次
if(a[j]==a[i])
{
cnt++;
}
}
//把if写在这里的目的是为了保证cnt是最终结果
if(cnt>max)
{
max=cnt;
ret=a[i];
}
}
printf("%d",ret);
return 0;
}