Question: Look at the image below for the LARGEST algorithm and all the questions. This homework assignment is about determining the run time of a simple
Look at the image below for the LARGEST algorithm and all the questions.
This homework assignment is about determining the run time of a simple array algorithm, and about proving its correctness. It uses techniques like those used in the Cormen text for the procedure INSERTIONSORT.
The procedure LARGEST has parameters A and where is an array of integers, and is s length, which is greater than s indexes run from to Each element of is greater than and mays
more than once. LARGEST returns a maximum element chosen from
a points. What is the cost and count of each line in LARGEST? A line's cost is its run time. Its count is the number of times it is executed. Replace the question marks in the table shown above.
b points. Let be the run time of LARGEST when it is called with an array of length What is in the best case? Use your answer from a to define as an expression in closed form. Do not use Omega
or notation. Briefly explain your answer.
c points. What is in the worst case? Use your answer from a to define as an expression in closed form. Your answer may be different from that of Do not use or notation. Briefly explain
your answer.
In questions a through d use a loop invariant to prove that LARGEST is correct. Your invariant, and your proof, may be written in mathematics, in English, or in a mixture of the two.
a points. Show a loop invariant for LARGEST. Hint: Your invariant may optionally use logical connectives like etc.
b points. Prove that your invariant from a is true at initialization.
c points. Prove that your invariant from a is true during maintenance.
d points. Prove that your invariant from a shows that LARGEST is correct at termination.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
