POJ 2503 - 字符串哈希
来源:互联网 发布:量子光学 知乎 编辑:程序博客网 时间:2024/06/05 12:02
1.Question:
简单的字符串哈希的题目
引用拉链法处理冲突
2.Code:
#include"iostream"#include"cstring"#include"cstdlib"#include"cstdio"#define N 100003using namespace std;typedef struct node{char english[15];char foreign[15];struct node* next;}point;point data[N];int elfhash(char* str){unsigned long hash=0;unsigned long x=0;while(*str){hash=(hash<<4)+(*str++);if((x=hash&0xF0000000L)!=0){hash^=(x>>24);}hash&=~x;}return hash%N;}int main(){char ppp[30];char s1[12];char s2[12];memset(s1,0,sizeof(s1));memset(s2,0,sizeof(s2));while(gets(ppp) && ppp[0]!='\0'){sscanf(ppp,"%s %s",s1,s2);int key=elfhash(s2);point* k=new point;memset(k,0,sizeof(k));strcpy(k->english,s1);strcpy(k->foreign,s2);k->next=data[key].next;data[key].next=k;memset(s1,0,sizeof(s1));memset(s2,0,sizeof(s2));}while(gets(ppp)){int key=elfhash(ppp);point* k=data[key].next;if(k==NULL) printf("eh\n");else{while(k!=NULL){if(strcmp(k->foreign,ppp)==0){//while(1);printf("%s\n",k->english);break;} k=k->next;} }memset(ppp,0,sizeof(ppp));}return 0;}
3.怪异:
本题中,我们引用拉链法去处理冲突,但是我和网上大部分的代码都是一样的用ELFhash去做,但是很是奇怪,我一直是WA,求解WA的原因
0 0
- POJ 2503 - 字符串哈希
- POJ 1200 字符串哈希
- poj-2503-Babelfish-字典树orMAP or 字符串哈希
- poj 3096 Surprising Strings 字符串哈希
- poj 1200(字符串哈希)
- Crazy Search+POJ+字符串哈希
- poj-2774 二分+字符串哈希+二分
- poj 2503(字符串hash)
- POJ 2406 Power Strings--字符串哈希(bkdhash)-KMP(next)
- [POJ 2774] Long Long Message (字符串哈希+二分)
- [POJ 1743] Musical Theme (字符串哈希+二分)
- [POJ 3974] Palindrome (字符串哈希+二分)
- POJ 2503 字符串查找 qsort+二分查找
- poj 2503(scanf和gets读取字符串)
- POJ 2503 Babelfish // 字符串映射,Trie
- poj Babelfish 2503 (字符串模拟)
- Eight+POJ+八数码问题+bfs+dbfs+字符串哈希+全排列哈希
- poj 3007 Organize Your Train part II (字符串哈希)
- java流程控制语句
- 常用的DOS命令总结
- spring整合struts2 关于action bean的配置
- Windows下MySQL学习(三):让MySQL数据库支持中文,Matlab导入excel表到数据库
- 【纪念篇】 洛谷AC 100 纪念
- POJ 2503 - 字符串哈希
- windows IDEA 配置maven
- Huffman的应用之文件压缩与解压缩
- 【30.00%】【vijos 1909】寻找道路
- poj 2823 - Sliding Window【单调队列模板】
- Android 获取摄像头像素,个数
- 数据
- 网络游戏服务器注意事项,优化措施
- 平衡搜索树---AVL树