Recursion 树中树的时间复杂性[…]

Recursion 树中树的时间复杂性[…],recursion,tree,time-complexity,Recursion,Tree,Time Complexity,在平衡搜索树中插入的值为O(log n) 插入到[…]的树的树的树的树的树中的时间复杂度是多少?(这将持续k次)。所以主树的每个节点都是k次 为了简单起见,我们假设: 每棵树的高度是n 从主父树开始,经过k树,最后插入最里面的树 所有树都是平衡搜索树 撇开平衡过程如何在这样的结构中工作不谈 我最初猜测是O(klogn)。有什么想法吗?如果主树只是一个没有特定属性的随机树,那么要插入新元素,我们可以在O(n)时间中搜索主树,以找到合适的子树来插入密钥。这将是O(nlogn)。但是,如果主树和所

在平衡搜索树中插入的值为O(log n)

插入到[…]的树的树的树的树的树中的时间复杂度是多少?(这将持续
k
次)。所以主树的每个节点都是<代码>k次

为了简单起见,我们假设:

  • 每棵树的高度是
    n
  • 从主父树开始,经过
    k
    树,最后插入最里面的树
  • 所有树都是平衡搜索树
撇开平衡过程如何在这样的结构中工作不谈


我最初猜测是
O(klogn)
。有什么想法吗?

如果主树只是一个没有特定属性的随机树,那么要插入新元素,我们可以在
O(n)
时间中搜索主树,以找到合适的子树来插入密钥。这将是
O(nlogn)
。但是,如果主树和所有子树都是平衡的,那么整个事情就是一个平衡树,insert将像往常一样使用
O(logn)

主树有任何特定的属性吗?是的,根据@BlueRaja-Danny Pflughoeft在对链接帖子的评论中的回应:我认为它应该是
O(logn+logn+logn+…[k倍])
,这进一步等同于
O(log(n*n*n*…[k倍])
,结果是
O(logn^k)
O(klogn)
。因此:如果
k
值很小,导致
O(logn)
,我可以忽略它吗?如果
k
很大,那么使用
O(k log n)
?如果树与问题中的树相似(子树中的每个节点都指向自己的根),那么yes
O(klogn)
似乎是正确的。假设主树有
n
子树,每个子树都有
n
子树,最里面的树都有
n
节点(不是高度)。