随笔分类 - 数据结构与算法--邓俊辉
摘要:伸展树 通过 Splay/伸展操作 不断将某个节点旋转到根节点,使得整棵树仍然满足二叉查找树的性质,能够在均摊 O(logn)时间内完成插入,查找和删除操作 局部性。如刚刚被访问的节点,极有可能很快的再次被访问,下一次要访问的节点,极有可能就在刚被访问的节点附近。 伸展树是局部性原理的应用:将刚被访
阅读全文
摘要:BST 二叉搜索树 任一节点均不小于/不大于其左/右后代 BST的中序遍历序列,必然单调非降 BST的查找:O(h)。(减而治之) BST的插入:O(h)。 BST的删除:O(h)。 平衡二叉搜索树 BST的等价转化都可以视作是一系列的旋转而成 zig/zag 顺时针/逆时针 适度平衡 任一节点 左
阅读全文
摘要:优先级队列(完全二叉树) 体会优先级的概念,优先级的作用。比如getMax() delMax() insert() 的高效需求。 思考:为什么不用向量实现优先级队列?查询效率,摘除的效率低。O(n)。 思考:为什么不用有序向量实现优先级队列?插入效率低。O(n)。 可以用AVL,伸展树,红黑树实现优
阅读全文