lecture09

# lecture09 - Introduction to Algorithms...

This preview shows pages 1–11. Sign up to view the full content.

Introduction to Algorithms 6.046J/18.401J/SMA5503 Lecture 9 Prof. Charles E. Leiserson

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Introduction to Algorithms Day 17 L9.2 © 2001 by Charles E. Leiserson 3 3 Binary-search-tree sort T ←∅ Create an empty BST for i = 1 to n do T REE -I NSERT ( T , A [ i ]) Perform an inorder tree walk of T . Example: A = [3 1 8 2 6 7 5] 8 8 1 1 2 2 6 6 5 5 7 7 Tree-walk time = O ( n ) , but how long does it take to build the BST?
Introduction to Algorithms Day 17 L9.3 © 2001 by Charles E. Leiserson Analysis of BST sort BST sort performs the same comparisons as quicksort, but in a different order! 3 1 8 2 6 7 5 1 2 8 6 7 5 26 7 5 7 5 The expected time to build the tree is asymptot- ically the same as the running time of quicksort.

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Introduction to Algorithms Day 17 L9.4 © 2001 by Charles E. Leiserson Node depth The depth of a node = the number of comparisons made during T REE -I NSERT . Assuming all input permutations are equally likely, we have () ) (lg ) lg ( 1 node insert to s comparison # 1 1 n O n n O n i E n n i = = = = Average node depth . (quicksort analysis)
Introduction to Algorithms Day 17 L9.5 © 2001 by Charles E. Leiserson Expected tree height But, average node depth of a randomly built BST = O (lg n ) does not necessarily mean that its expected height is also O (lg n ) (although it is). Example. lg n n h = ) (lg 2 lg 1 n O n n n n n = + Ave. depth

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Introduction to Algorithms Day 17 L9.6 © 2001 by Charles E. Leiserson Height of a randomly built binary search tree Prove Jensen’s inequality , which says that f ( E [ X ]) E [ f ( X )] for any convex function f and random variable X . Analyze the exponential height of a randomly built BST on n nodes, which is the random variable Y n = 2 X n , where X n is the random variable denoting the height of the BST. Prove that 2 E [ X n ] E [2 X n ] = E [ Y n ] = O ( n 3 ) , and hence that E [ X n ] = O (lg n ) . Outline of the analysis:
Introduction to Algorithms Day 17 L9.7 © 2001 by Charles E. Leiserson Convex functions A function f : R R is convex if for all α , β≥ 0 such that α + β = 1 , we have f ( α x + β y ) ≤α f ( x ) + β f ( y ) for all x , y R . α x + β y α f ( x ) + β f ( y ) f ( α x + β y ) xy f ( x ) f ( y ) f

This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document
Introduction to Algorithms Day 17 L9.8 © 2001 by Charles E. Leiserson Convexity lemma Lemma. Let f : R R be a convex function, and let { α 1 , α 2 , …, α n } be a set of nonnegative constants such that k α k = 1 . Then, for any set { x 1 , x 2 , …, x n } of real numbers, we have ) ( 1 1 = = n k k k n k k k x f x f α Proof. By induction on n . For n = 1 , we have α 1 = 1 , and hence f ( α 1 x 1 ) ≤α 1 f ( x 1 ) trivially. .