【发布时间】:2015-10-04 00:52:21
【问题描述】:
我需要实现两个排名查询 [rank(k) 和 select(r)]。但在开始之前,我需要弄清楚这两个函数是如何工作的。
据我所知,rank(k) 返回给定键的等级k,select(r) 返回给定等级的键r。
所以我的问题是:
1.) 如何计算 AVL(自平衡 BST)中节点的排名?
2.) 多个键是否有可能具有相同的等级?如果是这样,select(r) 会返回什么?
我将包含一个示例 AVL 树,如果它有助于回答问题,您可以参考它。
谢谢!
【问题讨论】:
-
+1: 包含一个供参考的数字:-)
标签: algorithm binary-tree binary-search-tree