问题描述
所以我想实现一个功能: func rsum(根,左,右) 这个函数接受一个范围的值,然后在一个展开树中返回该树中所有键的总和。我希望它在 O(log n) 中工作。
我已经试过了:
s = 0
if self.root is None:
return 0
node = self.root
if left <= node.value <= right:
s += node.value
if node.value >left and node.left is not None :
self.root = node.left
s += self.range_sum(left,right)
if node.value < right and node.right is not None:
self.root = node.right
s += self.range_sum(left,right)
return s
虽然它在 O(log n) 中不起作用,但有更好的方法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)