//使用字符串hash的算法
#include<cstdio>
const int maxn=100;
char S[maxn][5],temp[5];
int hashTable[26*26*26+10];
int hashFunc(char S[],int len){
int id=0;
for(int i=0;i<len;i++){
id=id*26+(S[i]-'A');
}
return id;
}
int main(){
int n,m;
scanf("%d%d",&n,&m);
for(int i=0;i<n;i++){
scanf("%s",S[i]);
int id=hashFunc(temp,3);
hashTable[id]++;
}
for(int i=0;i<m;i++){
scanf("%s",temp);
int id=hashFunc(temp,3);
printf("%d\n",hashTable[id]);
}
return 0;
}
//使用字符串hash的算法
最新推荐文章于 2022-05-01 14:12:17 发布
该篇博客探讨了如何使用字符串哈希算法,通过C++实现了一个简单的哈希函数,用于快速查找和计数输入的三字符字符串。在主函数中,程序读取多组字符串,计算哈希值并更新哈希表。这个哈希算法可以应用于字符串匹配、数据统计等场景。
2951

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



