
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
int main()
{
string a[1000];//创建字符串为元素的数组
int n;
while(cin>>n){//另一种持续输入的方法
if(n==0)
break;
int b[1000]={0};//初始化
for(int i=0;i<n;i++)
cin>>a[i];
for(int i=0;i<n-1;i++){
for(int j=i;j<n;j++){
if(a[i]==a[j])
b[i]++;//记录出现的次数,以首次出现的下标为据
}
}
int MAX=0;
for(int i=1;i<n;i++){
if(b[i]>b[MAX])
MAX=i;
}
cout<<a[MAX]<<endl;
}
return 0;
}
利用了两个数组的单词与其出现的次数下标相等解题,本质上相当于一个映射(map)
该篇博客介绍了一种使用C++实现的算法,通过创建字符串数组并结合两个数组来统计单词出现次数,找出重复字符。它展示了如何利用映射数据结构解决字符计数问题,并在输入序列中找到出现次数最多的单词。
999

被折叠的 条评论
为什么被折叠?



