摘要: 最小表示法 这是一个简单的字符串算法,其解决的问题如下: 给定一个字符串$S$,长度为$n$,如果把它的最后一个字符不断放到最前面,会得到$n$个不同的字符串,那么我们称这$n$个字符串是循环同构的。这$n$个字符串中字典序最小的一个,我们就称为$S$的最小表示。 $For\ example:$ $ 阅读全文
posted @ 2019-03-21 20:32 Parsnip 阅读(315) 评论(0) 推荐(1) 编辑
摘要: 字典树 (trie) 字典树,又名$trie$树,是一种用于实现字符串快速检索的树形数据结构。核心思想为利用若干字符串的公共前缀来节约储存空间以及实现快速检索。 $trie$树可以在$O((n+m) len)$解决形如这样的字符串检索问题: 给定$n$个字符串,再给定$m$个询问,每次询问某个字符串 阅读全文
posted @ 2019-03-21 19:24 Parsnip 阅读(258) 评论(0) 推荐(1) 编辑
摘要: 新增一道例题 左偏树 Leftist Tree 这是一个由堆(优先队列)推广而来的神奇数据结构,我们先来了解一下它。 简单的来说,左偏树可以实现一般堆的所有功能,如查询最值,删除堆顶元素,加入新元素等,时间复杂度也均相等,与其不同的是,左偏树还可以在$O(log_2n)$的时间之内实现两个堆的合并操 阅读全文
posted @ 2019-03-21 17:52 Parsnip 阅读(659) 评论(2) 推荐(3) 编辑