CS 201 Winter 2021
Lectures

Subscribe to this calendar (google, iCal, etc.)

DateDescription
January 4 Welcome!; Java Basics
Read the notional machine handout
January 6 Object-Oriented Programming I
Read Bailey 1.3--1.7 (p. 8--22) (for more examples, after watching video)
January 8 Object-Oriented Programming II
Read Algorithms 1.2
January 11 Extensible Arrays
No assigned reading
January 13 Linked Lists I
Read Bailey 9--9.2 (p. 195--202)
January 15 Linked Lists II
After video/notes, play around with linked list visualizations
January 18 Stacks and Queues: ADTs
(After video/notes) explore Two-Stack Algorithm for arithmetic:
January 20 Stacks and Queues: Implementation
Read this summary of stacks & queues
January 22 Iterators
No reading
January 25 Time and Space Complexity
Read Bailey Section 5.1.1
January 27 Sorting
Read Bailey Section 5.2.1
January 29 Searching
No reading
queens.zip
February 1 Maps
Read Bailey Section 15.2 and 15.3
February 3 Hashing I
Read Bailey Section 15.4.3 and 15.4.4
February 5 Hashing II
Read Bailey Section 15.4.1, 15.4.2, and 15.4.5
February 10 Introduction to Trees
Read Bailey Sections 12.1, 12.2, and 12.3
February 12 Tree Traversals
Read the Lab 5 writeup
February 15 Binary Search Trees
Read Algorithms 3.2
February 17 Advanced Search Trees
After video, read Bailey 14.5 (optionally 14.6 and 14.7)
February 19 Trees for Multidimensional Data
No reading
February 22 Priority Queues and Heaps
Read Algorithms 2.4
February 24 Introduction to Graphs
Read Bailey sections 16.1 and 16.2
February 26 Graph Search
Read Bailey sections 16.4.1 and 16.4.2
March 1 Graph Data Structures
Read Algorithms 4.1 and Algorithms 4.2
March 3 Shortest Paths
Read Algorithms 4.4
March 5 Minimum Spanning Trees
Read Algorithms 4.3
March 8 Introduction to Parallelism
Read Grossman 2.1--3.4
March 10 Review; Ask me anything; course evals