Chapter 2: Problem 34
Implement both Exchange Sort and Quicksort algorithms on your computer to sort a list of \(n\) elements. Find the lower bound for \(n\) that justifies application of the Quicksort algorithm with its overhead.
/*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
Learning Materials
Features
Discover
Chapter 2: Problem 34
Implement both Exchange Sort and Quicksort algorithms on your computer to sort a list of \(n\) elements. Find the lower bound for \(n\) that justifies application of the Quicksort algorithm with its overhead.
All the tools & learning materials you need for study success - in one app.
Get started for free
Write a divide-and-conquer algorithm for the Towers of Hanoi Problem. The Towers of Hanoi Problem consists of three pegs and \(n\) disks of different sizes. The object is to move the disks that are stacked, in decreasing order of their size, on one of the three pegs to a new peg using the third one as a temporary peg. The problem should be solved according to the following rules: (1) when a disk is moved, it must be placed on one of the three pegs: (2) only one disk may be moved at a time, and it must be the top disk on one of the pegs; and (3) a larger disk may never be placed on top of a smaller disk. (a) Show for your algorithm that \(S(n)=2^{n}-1 .\) [Here \(S(n)\) denotes the number of steps (moves), given an input of \(n\) disks. (b) Prove that any other algorithm takes at least as many moves as given in part (a).
Write a nonrecursive algorithm for Quicksort (Algorithm 2.6). Analyze your algorithm, and give the results using order notation.
Suppose that on a particular computer it takes \(12 n^{2}\), \(\mu\) s to decompose and recombine an instance of size \(n\) in the case of Algorithm 2.8 (Strassen). Note that this time includes the time it takes to do all the additions and subtractions. If it takes \(n^{3} \mu\) s to multiply two \(n \times n\) matrices using the standard algorithm, determine thresholds at which we should call the standard algorithm instead of dividing the instance further. Is there a unique optimal threshold?
Show that the recurrence equation for the worst-case time complexity for Mergesort (Algorithms \(2.2 \text { and } 2.4)\) is given by \\[ W(n)=W\left(\left[\frac{n}{2}\right\rfloor\right)+W\left(\left\lceil\frac{n}{2}\right]\right)+n-1 \\] when \(n\) is not restricted to being a power of 2
How many multiplications would be performed in finding the product of two \(64 \times 64\) matrices using the standard algorithm?
What do you think about this solution?
We value your feedback to improve our textbook solutions.