13 Sorting and Searching

13.1 Basic Comparison Sorts

    13.1.1 Bubble Sort

    13.1.2 Selection Sort (Min/Max)

    13.1.3 Insertion Sort

    13.1.4 Testing and Verifying Sorts

    13.1.5 Sort Visualization

    13.1.6 Order Analysis

    13.1.7 Shell Sort (Diminishing Gap Sort)

13.2 Searching

    13.2.1 Sequential Search (Linear Search)

    13.2.2 Binary Search

13.3 Performance and Timing

13.4 Classifying Bugs

13.5 Memory Layout

13.6 Sorting/Searching with case classes

13.7 Putting it Together