Curriculum

4 Topics
Course Introduction
Welcome to Algorithms Part I
Lecture Slides
Hello World

9 Topics
Dynamic Connectivity
Quick Find
Quick Union
Quick-Union Improvements
Union−Find Applications
Overview
Lecture Slides
Interview Questions: Union–Find (ungraded)
Percolation

8 Topics
Analysis of Algorithms Introduction
Observations
Mathematical Models
Order-of-Growth Classifications
Theory of Algorithms
Memory
Lecture Slides
Interview Questions: Analysis of Algorithms (ungraded)

10 Topics
Stacks
Resizing Arrays
Queues
Generics
Iterators
Stack and Queue Applications (optional)
Overview
Lecture Slides
Interview Questions: Stacks and Queues (ungraded)
Deques and Randomized Queues

8 Topics
Sorting Introduction
Selection Sort
Insertion Sort
Shellsort
Shuffling
Convex Hull
Lecture Slides
Interview Questions: Elementary Sorts (ungraded)

9 Topics
Mergesort
Bottom-up Mergesort
Sorting Complexity
Comparators
Stability
Overview
Lecture Slides
Interview Questions: Mergesort (ungraded)
Collinear Points

6 Topics
Quicksort
Selection
Duplicate Keys
System Sorts
Lecture Slides
Interview Questions: Quicksort (ungraded)

8 Topics
APIs and Elementary Implementations
Binary Heaps
Heapsort
Event-Driven Simulation (optional)
Overview
Lecture Slides
Interview Questions: Priority Queues (ungraded)
8 Puzzle

8 Topics
Symbol Table API
Elementary Implementations
Ordered Operations
Binary Search Trees
Ordered Operations in BSTs
Deletion in BSTs
Lecture Slides
Interview Questions: Elementary Symbol Tables (ungraded)

6 Topics
2−3 Search Trees
Red-Black BSTs
B-Trees (optional)
Overview
Lecture Slides
Interview Questions: Balanced Search Trees (ungraded)

7 Topics
1d Range Search
Line Segment Intersection
Kd-Trees
Interval Search Trees
Rectangle Intersection
Lecture Slides
Kd-Trees

7 Topics
Hash Tables
Separate Chaining
Linear Probing
Hash Table Context
Overview
Lecture Slides
Interview Questions: Hash Tables (ungraded)

5 Topics
Symbol Table Applications: Sets (optional)
Symbol Table Applications: Dictionary Clients (optional)
Symbol Table Applications: Indexing Clients (optional)
Symbol Table Applications: Sparse Vectors (optional)
Lecture Slides

  Write a Review

Algorithms, Part I

Go to Free Course