Module 3: Quicksort
Welcome to Module 3
While various sorting algorithm exist with their own strengths and weaknesses; in practice, a sorting algorithm that is efficient on average and that is relatively simple to implement is desired. Quicksort represents such an algorithm that can be implemented in place, easily designed recursively, and with good average performance. Moreover, while asymptotic analysis drops the coefficient constants, these can affect an implemented algorithm's running time. These constants are small for quicksort.
Module Learning Outcomes
Upon successful completion of this module, you will be able to:
- Implement the quicksort algorithm recursively (CLO 3).
- Add randomization of the pivot point to improve performance (CLO 3).
- Analyze the running time of quicksort (CLO 3).
(CLO = Course Learning Outcome)
To Do
Please read/watch all of the module learning materials (readings, presentations, videos, etc.) and complete all assignments/assessments listed below. If you have questions, please contact the course instructor or ask in the Questions About This Course forum.
Readings and Presentations:
- Read Chapter 7
- Topic 3: Quicksort Online Lecture
Animations:
- Sorting Algorithms Animations (see Quick and Quick3 algorithms)
Assignments/Assessments:
Click the Next ▶ button to continue.