请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

rank和select操作

bobo老师,rank和select操作直接用中序遍历,然后找出对应索引或者索引的元素不就行了吗。为什么用size这个变量?

正在回答

1回答

如果使用先中序遍历的方式,rank和select的操作就变成了O(n)级别的操作。但是添加上了对size的维护以后,rank和select操作是O(logn)级别的操作:)


思考一下看看?


提示:如果有size这个变量,比如要找第16个元素,我们从根节点出发,就可以直接知道,或者这个根节点就是第16个元素;或者我们可以直接去左子树找,而完全不管右子树;或者我们可以直接去右子树找;而完全不管左子树:)


强烈建议自己动手实现以下试试看:)


加油!

0 回复 有任何疑惑可以回复我~
  • 提问者 Super波神 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-08-20 10:17:20
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信