CS 201 Winter 2022
Lectures

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

DateDescription
January 5 Java Basics
Read the notional machine handout
January 7 Object-Oriented Programming I
Read Bailey 1.3--1.7 for more examples
January 10 Object-Oriented Programming II
Read Algorithms 1.2
January 12 Extensible Arrays
No assigned reading
January 14 Linked Lists I
Read Bailey 9--9.2
January 17 Linked Lists II
After lecture, play around with linked list visualizations
January 19 ArrayList vs LinkedList
No reading
January 21 Stacks and Queues
Read this summary of stacks & queues. After lecture, explore Two-Stack Algorithm for arithmetic:
January 24 Iterators
No reading
January 26 Time and Space Complexity
Read Bailey 5.1.1
January 28 Recursion and Sorting
Read Bailey section 5.2.1
January 31 Searching
No reading
February 2 Maps
Read Bailey 15.2 and 15.3
February 4 Hashing I
Read Bailey 15.4.3 and 15.4.4
February 9 Hashing II
Read Bailey 15.4.1, 15.4.2, and 15.4.5
February 11 Introduction to Trees
Read Bailey 12.1, 12.2, and 12.3
February 14 Binary Search Trees
Read Algorithms 3.2
February 16 Tree Traversals
Read Bailey 12.6
February 18 Trees for Multidimensional Data
Read lab 6 writeup
February 21 Advanced Search Trees
After lecture, read Bailey 14.5 (optionally 14.6 and 14.7)
February 23 Priority Queues and Heaps
Read Algorithms 2.4
February 25 Introduction to Graphs
Read Bailey 16.1 and 16.2
February 28 Graph Search
Read Bailey 16.4.1 and 16.4.2
March 2 Graph Data Structures
Read Algorithms 4.1 and Algorithms 4.2
March 4 Shortest Paths
Read Algorithms 4.4
March 7 Minimum Spanning Trees
Read Algorithms 4.3
March 9 Introduction to Parallelism
Read Grossman 2.1--3.4
March 11 Review; Ask me anything; course evals