CS35: Schedule

Reading tips

The reading listed for each week provides an overview of the material that will be covered in that week's lectures.

  • You should skim the material for each week before Tuesday's lecture so that you are ready to participate in class.
  • Pay more attention to the conceptual ideas than the details of any C++ code that is provided.
  • You rarely need to read an entire chapter, so pay attention to the page numbers provided.



WEEK DAY ANNOUNCEMENTS TOPIC & READING LAB
1

Jan 17

Introduction

Introduction to the course and C++ Lab 1: Git and C++

Jan 19

Types, pointers, arrays, stack diagrams

2

Jan 24

Classes and objects in C++

Objects and Memory Lab 2: PicFilter

Jan 26

Encapsulation, Inheritance, Polymorphism

3

Jan 31

Destructors and Big O

Big-O Notation and Sorting Lab 3: Shapes

Feb 02

Big O proofs and Merge Sort

4

Feb 07

Merge Sort analysis, Quick Sort

Lab 4: Quicksort and Big-O

Feb 09

Test 1 in lab
Test 1 Study Guide

Review Quick Sort, C++ templates, List ADT

Lists
5

Feb 14

ArrayList, LinkedList

Lab 5: Linked Lists

Feb 16

Wrap up Lists, Intro Stacks and Queues

Stacks and Queues
6

Feb 21

Implementing Stacks & Queues, and applying to search

Lab 6: Stacks and Queues

Feb 23

  Induction and Invariants
7

Feb 28

Wrap up Stacks & Queues, Induction proofs

Dictionaries and Binary Search Trees

Mar 02

Dictionary ADT, Binary Search Trees

 

Mar 07

Spring Break

Mar 09

8

Mar 14

Implementing BST methods get, insert, remove

Balanced Binary Trees Lab 7: BSTs

Mar 16

Test 2 in lab
Test 2 Study Guide

BST traversals, Balanced BSTs: AVL trees

9

Mar 21

Priority Queue ADT, Complete Trees, Heaps

Priority Queues

Mar 23

Heap implementation, Heapify, Heap Sort

10

Mar 28

Another Dictionary implementation: Hash Tables

Hash Tables Lab 8: Hash tables and Priority queues

Mar 30

Linear Dictionary, implementing Hash Tables

11

Apr 04

Review Hash tables and Dictionaries, Introduce Graphs

Graph Introduction and Implementation

Apr 06

Implementing the Graph ADT

12

Apr 11

Graph algorithms: reachableDFS and shortestLengthPathBFS

Graph Algorithms Lab 9: Graphs

Apr 13

Test 3 in lab
Test 3 Study Guide

Graph algorithms: Single Source Shortest Path

13

Apr 18

Graph algorithms: Topolgical Sort

More Graph Algorithms

Apr 20

Graph algorithms: Minimum Spanning Trees

14

Apr 25

Final Study Guide

Growing Neural Gas
Final review

Fun topic

Apr 27

More review

Review
 

May 08

Final exam 9am in SCI 199
ADTs summary