Quadratic Sorts

After reading this chapter and engaging in the embedded activities and reflections, you should be able to:

  • Describe Selection, Insertion, and Bubble sorts at high level.
  • Trace each sorting algorithm on a given sequence of data.
  • Understand each sorting algorithm well enough to implement them.
  • Recognize the effect of applying a particular sorting strategy on a data sequence.
  • Work out the asymptotic complexity of each sorting algorithm.
  • Identify the number of comparisons and swaps for each of these algorithms in the worst case, based on the data size.
  • Understand the use and operation of Java's Comparable interface.

Starter code for this chapter

This chapter does not have separate solution code because a homework is about implementing insertion sort. Other solutions are already included in the starter code.