美文网首页
顺序统计树

顺序统计树

作者: 向前走向后看 | 来源:发表于2017-04-01 11:00 被阅读0次

通过修改红黑树,使得可以在O(lgn)时间内确定任何的顺序统计量

顺序统计树T只是简单的在每个节点上存储附加信息的一棵红黑树,在红黑树的节点x中,除了通常属性x.key,x.color,x.p,x.left,x.right之外,还包括一个属性x.size,这个属性表示以x为根的子树的节点数,即这棵树的大小。

T.nil.size = 0
x.size = x.left.size + x.right.size + 1

返回以x为根的子树中包含第i小关键字的节点伪代码OS-SELECT(T.root,i)

OS-SELECT(x,i)
r = x.left.size + 1
if i == r
        return x
elseif i < r
        return OS-SELCT(x.left,i)
else
        return OS-SELCT(x.right,i-r)

确定一个元素的秩
给定指向顺序统计树T中节点x的指针,过程OS-RANK返回对T中序遍历对应的线性序列中x的位置

OS-RANK(T,x)
r = x.left.size + 1
y = x
while y ≠ T.root
        if y == y.p.right
              r = r + y.p.left.size + 1
        y = y.p
return r

相关文章

  • 顺序统计树

    通过修改红黑树,使得可以在O(lgn)时间内确定任何的顺序统计量 顺序统计树T只是简单的在每个节点上存储附加信息的...

  • 算法导论数据结构的扩张笔记

    动态顺序统计 1.将红黑树扩展为顺序统计树,可以在 O(lgn) 时间内确定任何的顺序统计量2.扩展方法为红黑树的...

  • 四、树与二叉树

    四、树与二叉树 1. 二叉树的顺序存储结构 二叉树的顺序存储就是用数组存储二叉树。二叉树的每个结点在顺序存储中都有...

  • 算法学习01_顺序统计量

    本篇源至于《算法导论》第9章学习笔记,记录关于顺序统计量的学习实践。 概念 顺序统计量 在一个由n个元素组成的集合...

  • 算法-寻找顺序统计量

    结论 假设所有元素都是互异的,使用RANDOMIZED-SELECT算法可在期望为线性时间内找到任一顺序统计量,特...

  • 树的统计

    树链剖分需要注意的地方有 dfs序, 需要以重儿子优先 线段树的统计 从最初写完到最后AC一共有四处错误. 查询格...

  • 2018-07-01

    顺序图 类图 树

  • LeetCode之Custom Sort String(Kotl

    问题: 方法:通过LinkedHashMap存储字符出现次数,keys的顺序作为S中字符的顺序。遍历T中字符,统计...

  • NumPy API(二十二)——统计学

    统计学 顺序统计 amin(a[, axis, out, keepdims]) 返回数组的最小值或沿轴的最小值。 ...

  • 中位数和顺序统计量

    算法导论中文第三版Chapter 9 一些概念 顺序统计量:在n元素集合中,第i个顺序统计量是该集合中第i小的元素...

网友评论

      本文标题:顺序统计树

      本文链接:https://www.haomeiwen.com/subject/qjqvottx.html