2012年3月10日

poj 2001

摘要: poj 2001题意:给你一堆字符串,要求能够唯一识别该字符串的最短前缀。(字典树+静态数组)类似于poj3283。在每个节点域里面加一个repeated,建立字典树的时候,repeated=false该节点再次被访问时repeated=true于是对每一个字串,依字典树遍历每个节点遇到repeated=false 则表示是最短前缀。code:#include<algorithm>#include<iostream>#include<string>#include<cstdlib>#include<cmath>using namesp 阅读全文

posted @ 2012-03-10 15:18 kevinkitty 阅读(334) 评论(0) 推荐(0) 编辑

poj 3283

摘要: poj 3283典型的字典树问题(字典树+静态数组+hash)题目:将每块字符看成一个单字符,这样一行字符块就构成了一个字符串。倒着往前一次建立字典树,求所用的节点。看样例:33 7D AH 5S4 9C 3D 4D 5S2 AH 5S5S->AH->7D5S->4D->3D->9C5S->AH然后:5S->AH->7D(5S->AH)(5S->)4D->3D->9C带括号表示已经出现过不需要再建立节点。于是最后需要的节点数就是9-3=6;实现的时候,我不喜欢用各种指针,申请空间和释放空间都比较麻烦。于是可以用静态数组表示 阅读全文

posted @ 2012-03-10 14:18 kevinkitty 阅读(1267) 评论(0) 推荐(0) 编辑

导航