文字列の配列で出現頻度が最も高い要素を見つける必要があります。あまり経験がないのでどうしたらよいかわかりません。ポインター/ハッシュテーブルがわかりません。
整数に対しては既にこれを実行しましたが、文字列に対しては機能しません。
私のバージョン:
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int a[]={1,2,3,4,4,4,5};
int n = sizeof(a)/sizeof(int );
int *b=new int [n];
fill_n(b,n,0); // Put n times 0 in b
int val=0; // Value that is the most frequent
for (int i=0;i<n;i++)
if( ++b[a[i]] >= b[val])
val = a[i];
cout<<val<<endl;
delete[] b;
return 0;
}
文字列の配列で最も頻繁に発生する要素を見つけるための助けをいただければ幸いです!