Consider the following algorithm, which may be called on an array that is not necessarily sorted. and returns the array in sorted form. GoofySort (A) : if (len (A) <= 3): SelectionSort (A) else: Let t + ſlen(A)/3] A[1:2t] + GoofySort (A[1:2t]) A[t+1:n] + GoofySort (A[t+1:n]) //sort the back 2/3rds //sort the front 2/3rds A[1:2t] GoofySort (A[1:2t]) //sort the front 2/3rds (a) Write a recurrence which captures the runtime of this algorithm. Your recurrence should be of the form T (n) =?. You can ignore any non-recursive operations (i.e. you only need to focus on operations in the last three lines). You do not need to handle base cases here. You can assumen is divisible by 3 for convenience. (b) Solve your recurrence using the substitution method. Show your work. You may assume a base case of T (1) = 1. State what the big-O runtime is for this algorithm (hint: it should be a polynomial written in the form n). %3D
Consider the following algorithm, which may be called on an array that is not necessarily sorted. and returns the array in sorted form. GoofySort (A) : if (len (A) <= 3): SelectionSort (A) else: Let t + ſlen(A)/3] A[1:2t] + GoofySort (A[1:2t]) A[t+1:n] + GoofySort (A[t+1:n]) //sort the back 2/3rds //sort the front 2/3rds A[1:2t] GoofySort (A[1:2t]) //sort the front 2/3rds (a) Write a recurrence which captures the runtime of this algorithm. Your recurrence should be of the form T (n) =?. You can ignore any non-recursive operations (i.e. you only need to focus on operations in the last three lines). You do not need to handle base cases here. You can assumen is divisible by 3 for convenience. (b) Solve your recurrence using the substitution method. Show your work. You may assume a base case of T (1) = 1. State what the big-O runtime is for this algorithm (hint: it should be a polynomial written in the form n). %3D
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
![Consider the following algorithm, which may be called on an array that is not necessarily sorted.
and returns the array in sorted form.
GoofySort (A) :
if (len (A) <= 3): SelectionSort(A)
else:
[len(A)/3]
+ GoofySort (A[1:2t])
GoofySort (A[t+1:n]) //sort the back 2/3rds
+ GoofySort (A[1:2t])
Let t +
A[1:2t]
//sort the front 2/3rds
A[t+1:n]
A[1:2t]
//sort the front 2/3rds
(a) Write a recurrence which captures the runtime of this algorithm. Your recurrence should
be of the form T (n) =?. You can ignore any non-recursive operations (i.e. you only need to
focus on operations in the last three lines). You do not need to handle base cases here. You
can assumen is divisible by 3 for convenience.
(b) Solve your recurrence using the substitution method. Show your work. You may assume a
base case of T (1) = 1. State what the big-0 runtime is for this algorithm (hint: it should be a
polynomial written in the form nº).](/v2/_next/image?url=https%3A%2F%2Fcontent.bartleby.com%2Fqna-images%2Fquestion%2F095f44ba-d1fe-4c35-9931-1f02ef37ab83%2F7925db66-8a19-4e78-8bb8-b364a73f90d2%2Fwnnj0fu_processed.jpeg&w=3840&q=75)
Transcribed Image Text:Consider the following algorithm, which may be called on an array that is not necessarily sorted.
and returns the array in sorted form.
GoofySort (A) :
if (len (A) <= 3): SelectionSort(A)
else:
[len(A)/3]
+ GoofySort (A[1:2t])
GoofySort (A[t+1:n]) //sort the back 2/3rds
+ GoofySort (A[1:2t])
Let t +
A[1:2t]
//sort the front 2/3rds
A[t+1:n]
A[1:2t]
//sort the front 2/3rds
(a) Write a recurrence which captures the runtime of this algorithm. Your recurrence should
be of the form T (n) =?. You can ignore any non-recursive operations (i.e. you only need to
focus on operations in the last three lines). You do not need to handle base cases here. You
can assumen is divisible by 3 for convenience.
(b) Solve your recurrence using the substitution method. Show your work. You may assume a
base case of T (1) = 1. State what the big-0 runtime is for this algorithm (hint: it should be a
polynomial written in the form nº).
Expert Solution

This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 2 steps

Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education

Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON

Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON

C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON

Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning

Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education