Week 03 (Sorting)
Sorting: Background
Sorting
The Sorting Problem
Comparison of Sorting Algorithms
Implementing Sorting
Ex1: Implementing
isSorted()
Ex2: Sorting Performance Lab
Ex3: SortLab
Sorts on Linux
Ex4: Sorting on Different Fields
Sorting: Elementary Algorithms
Describing Sorting Algorithms
Selection Sort
Bubble Sort
Insertion Sort
ShellSort: Improving Insertion Sort
Summary of Elementary Sorts
Sorting Linked Lists
Ex5: Exploring Sorting in SortLab
Sorting: Better (O(nlogn)) Algorithms
Quicksort
Quicksort Implementation
Quicksort Performance
Quicksort Improvements
Non-recursive Quicksort
Mergesort
Mergesort Implementation
Mergesort Performance
Non-recursive Mergesort
Mergesort Variation
Summary of Sort Methods
HeapSort
Sorting Lower Bound
Sorting Lower Bound for Comparison-Based Sorting
Non-Comparative Sorting
Radix Sort
Bucket/Pigeonhole Sort
External Sorting
External Mergesort
External Mergesort Cost Analysis
Produced: 8 Aug 2017