25
Master Theorem CSE235 Introduction Pitfalls Examples 4th Condition Master Theorem Slides by Christopher M. Bourke Instructor: Berthe Y. Choueiry Spring 2006 Computer Science & Engineering 235 Introduction to Discrete Mathematics [email protected] 1 / 25

Master Master Theorem - University of Nebraska–Lincolncse.unl.edu/~choueiry/S06-235/files/MasterTheorem.pdfMaster Theorem CSE235 Introduction Pitfalls Examples 4th Condition Master

  • Upload
    vuthuy

  • View
    224

  • Download
    1

Embed Size (px)

Citation preview

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master Theorem

Slides by Christopher M. BourkeInstructor: Berthe Y. Choueiry

Spring 2006

Computer Science & Engineering 235Introduction to Discrete Mathematics

[email protected] / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master Theorem I

When analyzing algorithms, recall that we only care about theasymptotic behavior.

Recursive algorithms are no different. Rather than solve exactlythe recurrence relation associated with the cost of analgorithm, it is enough to give an asymptotic characterization.

The main tool for doing this is the master theorem.

2 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master Theorem II

Theorem (Master Theorem)

Let T (n) be a monotonically increasing function that satisfies

T (n) = aT (nb ) + f(n)

T (1) = c

where a ≥ 1, b ≥ 2, c > 0. If f(n) ∈ Θ(nd) where d ≥ 0, then

T (n) =

Θ(nd) if a < bd

Θ(nd log n) if a = bd

Θ(nlogb a) if a > bd

3 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremPitfalls

You cannot use the Master Theorem if

T (n) is not monotone, ex: T (n) = sinn

f(n) is not a polynomial, ex: T (n) = 2T (n2 ) + 2n

b cannot be expressed as a constant, ex: T (n) = T (√

n)

Note here, that the Master Theorem does not solve arecurrence relation.

Does the base case remain a concern?

4 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 1

Let T (n) = T(

n2

)+ 1

2n2 + n. What are the parameters?

a =

1

b =

2

d =

2

Therefore which condition?

Since 1 < 22, case 1 applies.

Thus we conclude that

T (n) ∈ Θ(nd) = Θ(n2)

5 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 1

Let T (n) = T(

n2

)+ 1

2n2 + n. What are the parameters?

a = 1b =

2

d =

2

Therefore which condition?

Since 1 < 22, case 1 applies.

Thus we conclude that

T (n) ∈ Θ(nd) = Θ(n2)

6 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 1

Let T (n) = T(

n2

)+ 1

2n2 + n. What are the parameters?

a = 1b = 2d =

2

Therefore which condition?

Since 1 < 22, case 1 applies.

Thus we conclude that

T (n) ∈ Θ(nd) = Θ(n2)

7 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 1

Let T (n) = T(

n2

)+ 1

2n2 + n. What are the parameters?

a = 1b = 2d = 2

Therefore which condition?

Since 1 < 22, case 1 applies.

Thus we conclude that

T (n) ∈ Θ(nd) = Θ(n2)

8 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 1

Let T (n) = T(

n2

)+ 1

2n2 + n. What are the parameters?

a = 1b = 2d = 2

Therefore which condition?

Since 1 < 22, case 1 applies.

Thus we conclude that

T (n) ∈ Θ(nd) = Θ(n2)

9 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 1

Let T (n) = T(

n2

)+ 1

2n2 + n. What are the parameters?

a = 1b = 2d = 2

Therefore which condition?

Since 1 < 22, case 1 applies.

Thus we conclude that

T (n) ∈ Θ(nd) = Θ(n2)

10 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 2

Let T (n) = 2T(

n4

)+√

n + 42. What are the parameters?

a =

2

b =

4

d =

12

Therefore which condition?

Since 2 = 412 , case 2 applies.

Thus we conclude that

T (n) ∈ Θ(nd log n) = Θ(√

n log n)

11 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 2

Let T (n) = 2T(

n4

)+√

n + 42. What are the parameters?

a = 2b =

4

d =

12

Therefore which condition?

Since 2 = 412 , case 2 applies.

Thus we conclude that

T (n) ∈ Θ(nd log n) = Θ(√

n log n)

12 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 2

Let T (n) = 2T(

n4

)+√

n + 42. What are the parameters?

a = 2b = 4d =

12

Therefore which condition?

Since 2 = 412 , case 2 applies.

Thus we conclude that

T (n) ∈ Θ(nd log n) = Θ(√

n log n)

13 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 2

Let T (n) = 2T(

n4

)+√

n + 42. What are the parameters?

a = 2b = 4d = 1

2

Therefore which condition?

Since 2 = 412 , case 2 applies.

Thus we conclude that

T (n) ∈ Θ(nd log n) = Θ(√

n log n)

14 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 2

Let T (n) = 2T(

n4

)+√

n + 42. What are the parameters?

a = 2b = 4d = 1

2

Therefore which condition?

Since 2 = 412 , case 2 applies.

Thus we conclude that

T (n) ∈ Θ(nd log n) = Θ(√

n log n)

15 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 2

Let T (n) = 2T(

n4

)+√

n + 42. What are the parameters?

a = 2b = 4d = 1

2

Therefore which condition?

Since 2 = 412 , case 2 applies.

Thus we conclude that

T (n) ∈ Θ(nd log n) = Θ(√

n log n)

16 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a =

3

b =

2

d =

1

Therefore which condition?

Since 3 > 21, case 3 applies. Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

17 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a = 3b =

2

d =

1

Therefore which condition?

Since 3 > 21, case 3 applies. Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

18 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a = 3b = 2d =

1

Therefore which condition?

Since 3 > 21, case 3 applies. Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

19 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a = 3b = 2d = 1

Therefore which condition?

Since 3 > 21, case 3 applies. Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

20 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a = 3b = 2d = 1

Therefore which condition?

Since 3 > 21, case 3 applies.

Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

21 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a = 3b = 2d = 1

Therefore which condition?

Since 3 > 21, case 3 applies. Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

22 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

Master TheoremExample 3

Let T (n) = 3T(

n2

)+ 3

4n + 1. What are the parameters?

a = 3b = 2d = 1

Therefore which condition?

Since 3 > 21, case 3 applies. Thus we conclude that

T (n) ∈ Θ(nlogb a) = Θ(nlog2 3)

Note that log2 3 ≈ 1.5849 . . .. Can we say thatT (n) ∈ Θ(n1.5849) ?

23 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

“Fourth” Condition

Recall that we cannot use the Master Theorem if f(n) (thenon-recursive cost) is not polynomial.

There is a limited 4-th condition of the Master Theorem thatallows us to consider polylogarithmic functions.

Corollary

If f(n) ∈ Θ(nlogb a logk n) for some k ≥ 0 then

T (n) ∈ Θ(nlogb a logk+1 n)

This final condition is fairly limited and we present it merely forcompleteness.

24 / 25

MasterTheorem

CSE235

Introduction

Pitfalls

Examples

4th Condition

“Fourth” ConditionExample

Say that we have the following recurrence relation:

T (n) = 2T(n

2

)+ n log n

Clearly, a = 2, b = 2 but f(n) is not a polynomial. However,

f(n) ∈ Θ(n log n)

for k = 1, therefore, by the 4-th case of the Master Theoremwe can say that

T (n) ∈ Θ(n log2 n)

25 / 25