This preview shows pages 1–3. Sign up to view the full content.
1
CSE 421
Algorithms
Richard Anderson
Lecture 12
Recurrences and Divide and Conquer
Divide and Conquer
Recurrence Examples
• T(n) = 2 T(n/2) + cn
– O(n log n)
• T(n) = T(n/2) + cn
–O(n)
• More useful facts:
–log
k
n=±
log
2
n / log
2
k
–k
log n
= n
log k
T(n) = aT(n/b) + f(n)
Recursive Matrix Multiplication
Multiply 2 x 2 Matrices:
 r
s 
 a
b
e
g
 t
u
 c
d
 f
h
r = ae + bf
s = ag + bh
t = ce + df
u = cg + dh
A N x N matrix can be viewed as
a 2 x 2 matrix with entries that
are (N/2) x (N/2) matrices.
The recursive matrix
multiplication algorithm
recursively multiplies the
(N/2) x (N/2) matrices and
combines them using the
equations for multiplying 2 x 2
matrices
=
Recursive Matrix Multiplication
• How many recursive calls
are made at each level?
• How much work in
combining the results?
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document2
What is the run time for the recursive
Matrix Multiplication Algorithm?
• Recurrence:
This is the end of the preview. Sign up
to
access the rest of the document.
 Fall '06
 RichardAnderson
 Algorithms

Click to edit the document details