Data Structures and Algorithms with Object-Oriented Design Patterns in C#
next up previous contents index

Running Time Analysis

The running time of the recursive Sort method (Program gif) is given by

  equation37587

where n is the number of elements in sequence to be sorted, tex2html_wrap_inline69172 is the running time of the SelectPivot method, and i is the number of elements which end up to the left of the pivot, tex2html_wrap_inline69176.

The running time of Sort is affected by the SelectPivot method in two ways: First, the value of the pivot chosen affects the sizes of the subsequences. That is, the pivot determines the value i in Equation gif. Second, the running time of the SelectPivot method itself, tex2html_wrap_inline69172, must be taken into account. Fortunately, if tex2html_wrap_inline69182, we can ignore its running time because there is already an O(n) term in the expression.

In order to solve Equation gif, we assume that tex2html_wrap_inline69182 and then drop the tex2html_wrap_inline57397s from the recurrence to get

  equation37598

Clearly the solution depends on the value of i.




next up previous contents index

Bruno Copyright © 2001 by Bruno R. Preiss, P.Eng. All rights reserved.