hash
来源:互联网 发布:曲面软件 编辑:程序博客网 时间:2024/06/05 05:05
hash 是个好东西啊。 用链表实现,数组实现, 把一
个字符串保存起来, 再查速度很快
#include<cstdio>#include<cstring>#include<iostream>using namespace std;#define MAXD 100003char word[MAXD][12];char dict[MAXD][12];int head[MAXD] = {0};int next[MAXD];char t[15];int hash(char w[]){ int L = strlen(w); int sum = 0; for(int i = 0;i < L;i++) sum = 10 * sum + w[i]; return sum % MAXD;}int add(int n){ int x = hash(dict[n]); next[n] = head[x]; head[x] = n; return 1;}int search_word(){ int x = hash(t); int u = head[x]; while(u){ if(strcmp(dict[u],t)==0) return u; u = next[u]; } return -1;}int main(){ int N = 1; char str[30]; while (gets(str)){ if(str[0]=='\0') break; int i; for(i = 0; str[i] != ' '; ++i) word[N][i] = str[i]; word[N][i] = '\0'; char *p = str + i + 1; i = 0; while (*p) dict[N][i++] = *p++; dict[N][i] = '\0'; add(N); ++N; } while (gets(t)) { int index = search_word(); if (index == -1) puts("eh"); else printf("%s\n", word[index]); } return 0;}
个字符串保存起来, 再查速度很快
0 0
- hash
- Hash
- hash
- hash
- Hash
- hash
- Hash
- HASH
- hash
- hash
- HASH
- hash
- hash
- Hash
- hash
- hash
- Hash...
- hash
- JMeter Using CSV DATA SET CONFIG
- 射频电路设计实录第三章,硬件架构设计与元器件选型
- C语言字符串反转函数
- 【POJ】2771 Guardian of Decency 最大独立集
- SharpZipLib实现压缩多个文件或整个目录
- hash
- HDU 3342
- Hdu1251 - 统计难题 - 字典树
- Hibernate Validation各注解
- Copy Properties Maintain Their Own Copies
- poj3080~KMP+枚举
- JADE框架搭建
- MFC显示JPG图片
- c++ 将程序锁定到任务栏