字典树
来源:互联网 发布:什么是网络平台 编辑:程序博客网 时间:2024/05/17 03:44
#include <iostream>#include <cstdio>#include <cstring>#include <string>using namespace std;const int kind = 26;struct node{ int num; bool terminal; node *next[26]; node(){ num = 1; terminal = false; memset(next, 0, sizeof(next)); }};string s1, s2;void Insert(node *root, string s1){ node *p = root; int index; int len = s1.length(); for(int i = 0; i < len; i++){ index = s1[i] - 'a'; if(p -> next[index] == NULL){ p -> next[index] = new node(); } else{ p -> next[index] -> num++; } p = p -> next[index]; } p ->terminal = true;}int Find(node *root, string s2){ node *p = root; int i, index; int len = s2.length(); for(i = 0; i < len; i++){ index = s2[i] - 'a'; if(p->next!=NULL){ if(i == len - 1){ return p->next[index]->num; } } else{ return 0; } p = p->next[index]; } return 0;}int main(){ node *root = new node(); while(getline(cin, s1) && !s1.empty()){ Insert(root, s1); } while(getline(cin, s2)){ int k = Find(root, s2); printf("%d\n", k); } return 0;}
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树。。
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 字典树
- 01背包(递推)
- 国际C语言乱码大赛(IOCCC)经典之作
- GreenDroid(2)ActionBar的实现
- HDU 1164 分解成素数乘积的形式
- setsockopt()用法(参数详细说明)
- 字典树
- bulk collect into
- java反射调用main方法,private方法实现
- 现在的状态
- JAVA二进制字节数组字符十六进制BCD编码转换
- 最长公共子序列(hdu1159)
- 软件开发的基本方法---读软件工程思想(林锐)有感
- 代码检视心得
- 网站内页关键词与描述设置方法