题意:给定一些木棒,木棒两端都涂上颜色,不同木棒相接的一边必须是相同的颜色,
求是否能将木棒首尾相接,连成一条直线.
分析:可以用欧拉路的思想来解,将木棒的每一端都看成一个结点
由图论知识可以知道,无向图存在欧拉路的充要条件为:
① 图是连通的;
② 所有节点的度为偶数,或者有且只有两个度为奇数的结点。...
分类:
其他好文 时间:
2014-10-30 13:34:24
阅读次数:
211
题目链接:poj 2513 Colored Sticks
题目大意:有N个木棍,每根木棍两端被涂上颜色,现在给定每个木棍两端的颜色,不同木棍之间拼接需要颜色相同的
端才可以,问最后能否将N个木棍拼接在一起。
解题思路:欧拉通路+并查集+字典树。欧拉通路,每个节点的统计度,度为奇数的点不能超过2个。并查集,判断节点
是否完全联通。字典树,映射颜色。
#include
...
分类:
其他好文 时间:
2014-10-30 00:29:11
阅读次数:
158
题目连接:hdu 1298 T9
题目大意:模拟手机打字的猜想功能,根据概率,每按一个按键,输出可能性最高的串。先给定N个单词,以及频率,
然后是Q次询问,每次询问给定一个按按键的顺序,以1为终止。
解题思路:对单词表建立字典树,每个节点有一个经过的频率,这个频率是根据所有经过该节点的单词频率总和。然后
DFS搜索一遍,将答案保存在ans中。
#include
#inc...
分类:
其他好文 时间:
2014-10-29 21:36:27
阅读次数:
253
基数树(radix tree)是一种不怎么常见的数据结构,这里简单的做一下介绍:在计算机科学中,基数树,是一种基于trie(字典树)的特殊的数据结构,可以快速定位叶子结点。radix tree是一种多叉搜索树,每个结点有固定的孩子数(叉数 为2^n)....
分类:
其他好文 时间:
2014-10-28 17:50:40
阅读次数:
486
Trie树,也叫字典树、前缀树。可用于”predictive text”和”autocompletion”,亦可用于统计词频(边插入Trie树边更新或添加词频)。
在计算机科学中,trie,又称前缀树或字典树,是一种有序树,用于保存关联数组,其中的键通常是字符串。与二叉查找树不同,键不是直接保存在节点中,而是由节点在树中的位置决定。一个节点的所有子孙都有相同的前缀,也就是这个节点对应的字符串...
分类:
编程语言 时间:
2014-10-28 13:54:45
阅读次数:
366
Trie树,也叫字典树、前缀树。可用于”predictive text”和”autocompletion”,亦可用于统计词频(边插入Trie树边更新或添加词频)。在计算机科学中,trie,又称前缀树或字典树,是一种有序树,用于保存关联数组,其中的键通常是字符串。与二叉查找树不同,键不是直接保存在节点...
分类:
其他好文 时间:
2014-10-28 13:51:40
阅读次数:
546
后缀树(Suffix Tree)是一棵 Compressed Trie,其存储的关键词为 Text 所有的后缀。后缀树的性质:存储所有 n(n-1)/2 个后缀需要 O(n) 的空间,n 为的文本(Text)的长度;构建后缀树需要 O(dn) 的时间,d 为字符集的长度(alphabet);对模式(...
分类:
其他好文 时间:
2014-10-27 22:58:02
阅读次数:
351
在图示中,键标注在节点中,值标注在节点之下。每一个完整的英文单词对应一个特定的整数。Trie 可以看作是一个确定有限状态自动机,尽管边上的符号一般是隐含在分支的顺序中的。键不需要被显式地保存在节点中。图示中标注出完整的单词,只是为了演示 trie 的原理。trie 中的键通常是字符串,但也可以是其它...
分类:
其他好文 时间:
2014-10-27 22:45:53
阅读次数:
309
Trie树又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希表高。 ...
分类:
其他好文 时间:
2014-10-27 21:08:03
阅读次数:
205
字典树(Trie)是一种很特别的树状信息检索数据结构,如同其名,它的构成就像一本字典,可以让你快速的进行字符插入、字符串搜索等。字典树设计的核心思想是空间换时间,所以数据结构本身比较消耗空间。但它利用了字符串的共同前缀(Common Prefix)作为存储依据,以此来节省存储空间,并加速搜索时间。T...
分类:
其他好文 时间:
2014-10-24 23:38:01
阅读次数:
399