2016寒假训练——字典树
来源:互联网 发布:立式数控车床编程 编辑:程序博客网 时间:2024/06/08 20:18
来源:POJ1056
还是字典树,是判断是否有字符是另一个的前缀,kuangbin的博客上说交立即码。。。有扯远了。。。看官别介意。
其实就是字典树的使用,只不过就是在build_Tree的时候就判断就好了?
下面是一些注意点:
1.注意一旦不成立了,下面就不用继续建树了。。。这样节约时间。
2.注意这些不是太容易找到结束的输入,注意多次用whilescanf
3.还有。。。注意指针啊。。。还是要多练练。。。
4.哦,对。。。注意多组数据的时候,这些指针较多的题目要释放指针啊。。。
恩恩,差不多这些。。。
AC代码(VJ提交):
#include <iostream>#include <cstdio>#include <cstring>#include <cstdlib>using namespace std;typedef struct Trie_Node{ bool cover; Trie_Node *next[2];}Node;bool flag;void build(Node *root,char str[]){ Node *p=root; int i=0; for(i=0;i<strlen(str);i++){ if(p->next[str[i]-'0']==NULL){ Node *t=new Node; t->next[0]=NULL; t->next[1]=NULL; t->cover=false; p->next[str[i]-'0']=t; } else{ if(p->next[str[i]-'0']->cover){ flag=false; return; } } p=p->next[str[i]-'0']; } p->cover=true;}void del(Node *root){ for(int i=0;i<2;i++) if(root->next[i]!=NULL) del(root->next[i]); free(root); root=NULL;}int main(){int k=1; char str[50]; while(scanf("%s",str)!=EOF){ Node *root=new Node; root->next[0]=NULL; root->next[1]=NULL; root->cover=false; flag=true; build(root,str); while(scanf("%s",str)){ if(strcmp(str,"9")==0)break; if(flag==true) build(root,str); } if(flag==true)printf("Set %d is immediately decodable\n",k); else printf("Set %d is not immediately decodable\n",k); del(root); k++; }return 0;}
1 0
- 2016寒假训练——字典树
- 2016寒假训练——字典树
- 2016寒假训练——寒假结束
- 2016寒假训练——线段树
- 寒假训练--字典树--Message Flood
- 寒假训练--字典树--A - Immediate Decodability
- 寒假训练--字典树--B - Compound Words
- 2016寒假训练——二分
- 2016寒假训练——二分
- 2016寒假训练——二分
- 2016寒假训练——搜索
- 2016寒假训练——01背包
- 2016寒假训练——树状数组
- 2016寒假训练——数论
- 2016寒假训练——二分
- 2016寒假训练——搜索
- 2016寒假训练——尺取法
- 2016寒假训练——栈模拟
- poj1426 Find The Multiple
- 值得推荐的C/C++框架和库 (真的很强大)
- View滚动帮助类ViewDragHelper解析
- %-3d在C语言中的含义是什么?
- poj3260&&hdu3591(多重背包+完全背包)
- 2016寒假训练——字典树
- 安卓图看清安卓
- 【Data Algorithms_Recipes for Scaling up with Hadoop and Spark】Chapter1 Secondary Sort
- 更好的设计数据库还有就是数据库语句优化~~(主要是mysql)
- ProgressDialog的简单应用
- MySQL创建用户与授权方法
- 软件测试工具LoadRunner脚本回放问题及解决
- GitHub for Windows 安装
- 关于淘宝开放平台API的session失效问题解决