0% found this document useful (0 votes)
1 views6 pages

Recursion

The document introduces algorithm design with a focus on recursion and mathematical induction. It explains how to prove the correctness of a recursive algorithm that finds the maximum element in an array using inductive reasoning. Additionally, it derives the exact solution to a recurrence relation, concluding that T(n) = n log n.

Uploaded by

thisisnotme0109
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views6 pages

Recursion

The document introduces algorithm design with a focus on recursion and mathematical induction. It explains how to prove the correctness of a recursive algorithm that finds the maximum element in an array using inductive reasoning. Additionally, it derives the exact solution to a recurrence relation, concluding that T(n) = n log n.

Uploaded by

thisisnotme0109
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

UNIT I

INTRODUCTION TO ALGORITHM
DESIGN
Recursion recall
⚫ Functions calls itself
⚫ consists of one or more base cases and
one or more recursive cases.
Mathematical Analysis - Induction
⚫ Consider a recursive algorithm to compute the
maximum element in an array of integers.
⚫ You may assume the existence of a function “max(a,b)”
that returns the maximum of two integers a and b .
Solution
⚫ Let p(n) stand for the proposition that Algorithm finds and returns the maximum
integer in the locations A[1] through A[n]. Accordingly, we have to show that (∀n)
p(n) is true.
⚫ BASIS: When there is only one element in the array , i.e., n=1, then this element is
clearly the maximum element and it is returned on Line 2. We thus see that p(1) is
true.
⚫ INDUCTIVE STEP: Assume that Algorithm finds and returns the maximum
element, when there are exactly k elements in A.
⚫ Now consider the case in which there are k + 1 elements in A. Since (k + 1) > 1,
Line 4 will be executed.
⚫ From the inductive hypothesis, we know that the maximum elements in A[1]
through A[k] is returned. Now the maximum element in A is either A[k+1] or the
maximum element in A[1] through A[k] (say r). Thus, returning the maximum of
A[k+1] and r clearly gives the maximum element in A, thereby proving that p(k) →
p(k+1).
⚫ By applying the principle of mathematical induction, we can conclude that (∀n) p(n)
is true, i.e., Algorithm is correct.
⚫ Find the exact solution to the recurrence
relation using mathematical induction
method

⚫ Solution is T(n)=nlogn
Solution
⚫ Basis: At n = 1, both the closed form and the recurrence
relation agree (0=0) and so the basis is true.
⚫ Inductive step: Assume that T(r) = rlogr for all 1≤ r ≤ k . Now
consider T(k+1). As per the recurrence relation, we have,

⚫ We can therefore apply the principle of mathematical induction


to conclude that the exact solution to the given recurrence is
nlogn.

You might also like