算法专栏
文章平均质量分 81
xpspace
槐香谢,无人念离别; 风残咽,襟怀四海心了却。
展开
-
伸展树splaytree
伸展树(Splay Tree)是一种二叉排序树,它能在O(log n)内完成插入、查找和删除操作。它由Daniel Sleator和Robert Tarjan创造。 它的优势在于不需要记录用于平衡树的冗余信息。 在伸展树上的一般操作都基于伸展操作。 Splay Tree,中文叫伸展树,或者分裂树(1)为什么需要splay tree?[/b]各种查找树存在不足。比如:对于一个有n个节点的平衡树,虽然原创 2008-05-20 02:43:00 · 859 阅读 · 0 评论 -
后缀树/后缀数组
在字符串处理当中,后缀树和后缀数组都是非常有力的工具,其中后缀树大家了解得比较多,关于后缀数组则很少见于国内的资料。其实后缀数组是后缀树的一个非 常精巧的替代品,它比后缀树容易编程实现,能够实现后缀树的很多功能而时间复杂度也不太逊色,并且,它比后缀树所占用的空间小很多。可以说,在信息学竞赛 中后缀数组比后缀树要更为实用。因此在本文中笔者想介绍一下后缀数组的基本概念、构造方法,以及配合后缀数组的最原创 2008-05-20 02:45:00 · 1542 阅读 · 1 评论 -
hash
散列方法的主要思想是根据结点的关键码值来确定其存储地址:以关键码值K为自变量,通过一定的函数关系h(K)(称为散列函数),计算出对应的函数值来,把这个值解释为结点的存储地址,将结点存入到此存储单元中。检索时,用同样的方法计算地址,然后到相应的单元里去取要找的结点。通过散列方法可以对结点进行快速检索。 散列方法不同于顺序查找、二分查找、二叉排序树及B-树上的查找。它不以关键字的比较为基本操作,采用直原创 2008-05-20 02:51:00 · 2065 阅读 · 0 评论