字典树模板
2016-09-26 17:49
246 查看
测试题:
struct Trie{ /** * maxnode: Trie树中最多可能的节点个数 上限为字符串个数 * 最长长度 * sigma_size: 组成字符串的字符种类 * ch: 边 * value: 节点的值 * sz: Trie树的总节点个数 */ int ch[maxnode][sigma_size]; int value[maxnode]; int sz; int IDX(char c) {return c - 'a';} Trie(){ sz = 1; memset(ch[0],0,sizeof(ch[0])); } /** * 字符串s插入Trie中 值为V */ void Insert(char* s,int v){ int u = 0,len = strlen(s); for(int i = 0;i < len;++i){ int c = IDX(s[i]); if(!ch[u][c]){ memset(ch[sz],0,sizeof(ch[sz])); value[sz] = 0; ch[u][c] = sz++; } u = ch[u][c]; } value[u] = v; } /** * 查找字符串s 返回v */ int Search(char* s){ int cur = 0,idx; while(*s){ idx = IDX(*s); if(ch[cur][idx] == 0) return -1; cur = ch[cur][idx]; s++; } return value[cur]; } };
相关文章推荐
- 字典树模板
- 字典树模板
- HRBUST 1717 字典树模板
- 字典树模板
- trie树(字典树)模板
- 字典树模板题&hdu1251
- 字典树模板
- HDU1251-统计难题-字典树(纯模板题)
- 字典树(Tire树)模板+例题
- 字典树模板
- ACM_字典树模板
- hdu1671Phone List(字典树模板)
- hdoj 统计难题 1251 (字典树模板)
- 字典树(模板+总结)
- HDU 1671 Phone List 字典树模板
- (模板题)poj 2418 Hardwood Species(字典树)
- hdu 1075 What Are You Talking About 字典树模板
- 字典树模板
- 【字符串匹配】字典树模板
- HDOJ 1251-统计难题【模板:字典树】