01 2017 档案

摘要:PS:本文要解决的问题不算难度很大的问题,但“双优先队列”的方法是以前没有见过的,昨天睡觉突然想到的,以时间Ο(nlogn),空间O(n)的较好代价解决一类问题,记录一下。 问题抽象: 算法的设计中常会出现这种需求,一个对象有多种比较策略,而不同的比较往往会产生矛盾,目的是在一项指标的约束下实现另一 阅读全文
posted @ 2017-01-25 11:33 jily16 阅读(608) 评论(0) 推荐(0) 编辑
摘要:(本文尤其适合遍览网上的讲解而仍百思不得姐的同学) 一、原理 AC自动机首先将模式组记录为Trie字典树的形式,以节点表示不同状态,边上标以字母表中的字符,表示状态的转移。根节点状态记为0状态,表示起始状态。当一个状态处有一个模式串终结则标记一下。 目前流传较多的讲解多大同小异,尤其是配图,基本采用 阅读全文
posted @ 2017-01-05 16:35 jily16 阅读(12082) 评论(1) 推荐(1) 编辑
摘要:字典树是前缀匹配问题中常用的数据结构,查询速度可以达到O(len),len为待查序列的长度,但是字典树的空间消耗非常大,对于基于字母表的英文单词,每个节点要存储26个指针指向下一节点,很有可能有不少空的,很浪费。 考虑在节点中用哈希表来存储子节点指针,键值为单个字母,这样对于模式中没有的字母就省掉了 阅读全文
posted @ 2017-01-04 09:18 jily16 阅读(1504) 评论(0) 推荐(0) 编辑
摘要:题目http://acm.hdu.edu.cn/showproblem.php?pid=1671 题目本身不难,一棵前缀树OK,但是前两次提交都没有成功。 第一次Memory Limit Exceeded: 前缀树是很费空间的数据结构,每个节点存放了字母(数字)个数个指针,正所谓用空间来换取时间。 阅读全文
posted @ 2017-01-04 00:27 jily16 阅读(238) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示