建立哈希表,统计各个数字的出现频率
#include<bits/stdc++.h>
using namespace std;class inter{
public:
int num;
inter(){
num=1;
}
};
int main(){
int n,m;
cin>>n;
vector<int> l1;
unordered_map<int , inter*> map;
for(int i=1;i<=n;i++){
cin>>m;
if(map.count(m)) map[m]->num++;
else {
inter* p= new inter;
map[m]=p;
l1.push_back(m);
}
}
auto it=l1.begin();
int maxnum=*it;
int maxcount=map[*it]->num;
it++;
for(;it!=l1.end();it++){
if(map[*it]->num>maxcount)
{ maxcount=map[*it]->num;
maxnum=*it;
}
}
for(auto &pair:map){
delete pair.second;
}
cout<<maxnum;
}