1. Both mergesort and quicksort uses divide and conquer paradigm to sort unsorted list. (a) Imagine you want to write the quicksort algorithm to sort an array into non-increasing order. Write down the partition algorithm that is used in the divide phase in the quicksort algorithm. Show that the time complexity of this algorithm is 0(n). (b) Identify the worst case situation in the naive quicksort algorithm and show that in the worst case situation its time complexity is O(n²)

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
100%
1. Both mergesort and quicksort uses divide and conquer paradigm to sort unsorted list.
(a) Imagine you want to write the quicksort algorithm to sort an array into non-increasing
order. Write down the partition algorithm that is used in the divide phase in the
quicksort algorithm. Show that the time complexity of this algorithm is 0(n).
(b) Identify the worst case situation in the naive quicksort algorithm and show that in the
worst case situation its time complexity is O(n2)
Transcribed Image Text:1. Both mergesort and quicksort uses divide and conquer paradigm to sort unsorted list. (a) Imagine you want to write the quicksort algorithm to sort an array into non-increasing order. Write down the partition algorithm that is used in the divide phase in the quicksort algorithm. Show that the time complexity of this algorithm is 0(n). (b) Identify the worst case situation in the naive quicksort algorithm and show that in the worst case situation its time complexity is O(n2)
You have N magical bags of candies in front of you. The ith bag has A; candies in it. It takes
you one minute to finish a bag of candies, no matter how many candies are in it. Every time you
finish a bag with X candies in it, the bag is magically replenished with X/2 (rounded down to
the nearest integer) more candies. Write an algorithm that determines the maximum number
of candies you can eat in K minutes. Also determine the time complexity of your algorithm in
the worst case situation.
The input is a sequence of integers. The first integer N is the number of bags. The next integer
K is the number of minutes you have. The next N integers is the number of candies in the
bags. The output of your program is a single integer which represents the maximum number
of candies you can eat.
If the input is 5 3 217 4 2. the output would be 14.
Transcribed Image Text:You have N magical bags of candies in front of you. The ith bag has A; candies in it. It takes you one minute to finish a bag of candies, no matter how many candies are in it. Every time you finish a bag with X candies in it, the bag is magically replenished with X/2 (rounded down to the nearest integer) more candies. Write an algorithm that determines the maximum number of candies you can eat in K minutes. Also determine the time complexity of your algorithm in the worst case situation. The input is a sequence of integers. The first integer N is the number of bags. The next integer K is the number of minutes you have. The next N integers is the number of candies in the bags. The output of your program is a single integer which represents the maximum number of candies you can eat. If the input is 5 3 217 4 2. the output would be 14.
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY