You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

顺序插入n个随机元素构建二叉搜索树的时间下界求解

二叉搜索树最小总深度递推式的Θ(n lg n)证明方法

你给出的递推式对应n个节点的二叉搜索树能达到的最小总节点深度,对应的是最优平衡BST的总插入时间成本,两种常用严谨证明方法如下:

方法1:数学归纳法(代入法)

上界O(n lg n)证明

  • 归纳假设:存在正的常数c,对所有k < n,满足 T(k) ≤ c k lg k
  • 递推式中的min项由琴生不等式可证,当左右子树节点数尽可能均等时取最小值,即i = ⌊(n-1)/2⌋
  • 代入递推式,取n为2的幂次简化计算(非2的幂次可通过夹逼法得到同阶结果):
    T(n) = n-1 + T(n/2) + T(n/2)
         ≤ n-1 + 2 * c*(n/2) * lg(n/2)
         = n-1 + c n (lg n - 1)
         = c n lg n + (n - 1 - c n)
    
  • 取c≥1时,n-1 -c n ≤ 0,因此T(n) ≤ c n lg n,上界成立

下界Ω(n lg n)证明

  • 归纳假设:存在正的常数c,对所有k <n,满足T(k) ≥ c k lg k
  • 同样取均等分割的最小值代入,还是用n为2的幂次计算:
    T(n) = n-1 + T(n/2) + T(n/2)
         ≥ n-1 + 2 * c*(n/2) * lg(n/2)
         = n-1 + c n (lg n - 1)
         = c n lg n + (n - 1 - c n)
    
  • 取c=1/2时,n-1 - 0.5n = 0.5n -1 ≥ 0对所有n≥2成立,因此T(n) ≥ 0.5 n lg n,下界成立

上下界合并即可得T(n) = Θ(n lg n)

方法2:主定理直接推导

由于min操作保证每次分割都是最优的对半分,原递推式可以近似等效为标准分治递推:
T(n) = 2T(n/2) + Θ(n)
直接套用主定理的情况2,可直接得到解为Θ(n lg n),该结果和归纳法得到的结论完全一致。

如果你的需求是证明随机插入构建BST的期望时间下界,不是最小总深度的下界,也可以通过概率期望的方法推导,期望总深度同样是Θ(n lg n)量级。

内容的提问来源于stack exchange,提问作者W.Z.Hai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 18:57:04