为什么这两种关系成立?

时间:2014-08-08 19:16:41

标签: algorithm sorting complexity-theory

我想在平均情况下找到以下算法的成本:

Quicksort(A,p,r)
      if p<r then
         q<- partition(A,p,r)
         Quicksort(A,p,q-1)
         Quicksort(A,q+1,r)

我们认为我们幸运 - 不幸交替。

L:幸运,U:不幸

为什么这两种关系成立:

L(N)= 2U(N / 2)+Θ(n)的

U(N)= L(N-1)+Θ(n)的

1 个答案:

答案 0 :(得分:2)

首先,请注意,选择幸运和不幸的枢轴选择意味着每当您做出不幸的选择时,剩余的子问题将通过幸运的枢轴选择来解决,反之亦然。

其次,请注意,幸运的枢轴选择会将输入分成两个大小相同的子问题,每个子问题的大小都是原始的一半。另一方面,一个不吉利的选择留下了一个与原始尺寸几乎相同的子问题(因为输入中的每个项目都大于枢轴项目,或者更小)。

从这两个观察结果中可以明显看出为什么幸运子问题(L(n))的成本和不幸的子问题(U(N))的成本如图所示。