Lab Overview

Lab sessions are held every week and will be conducted by a team of TAs and Tutors. Labs are NOT just summaries of previous lecture content. While you will do some review, the labs will often teach new tools (debuggers, unit testing, Makefiles, etc.) or have you practice skills in more depth than lecture was able to cover. Thus, it is very important you attend labs and give your best effort. This may be different from previous CS courses where labs/discussions were optional or done ahead of time. In CS104, you should treat labs as you do lectures and make it a priority to attend each week.

Policies

Schedule

ID Week Title Topics Slides
1 Week 2 Git Git, GitHub
2 Week 2 GDB Debugging
3 Week 3 Makefiles Make, Build Systems
4 Week 3 Inheritance Inheritance, Polymorphism, OOP
5 Week 4 Templates Templates
6 Week 4 Midterm 1 Review Lab Midterm1Lab_Student.pdf
7 Week 5 Heaps Heaps, Priority Queues
8 Week 5 Binary Trees AVL, BST
9 Week 6 MT2 Review Recursion, Graph Algorithms
10 Week 6 Hashtables Hashtables, Hashing
11 Week 7 Recursive Backtracking & Counting
12 Week 7 Counting & Probability Counting
13 Week 8 Number Theory Number Theory
14 Week 9 Final Review