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
0 Week 1 GitHub Setup Github, Docker, Curricula lab0.pdf
1 Week 2 GDB GDB, Debugging lab1.pdf
2 Week 3 Makefiles Make, Build Systems lab2.pdf
3 Week 4 STL & Inheritance OOP lab3.pdf
4 Week 5 Templates OOP lab4.pdf
5 Week 6 Midterm I Review mt1_review_student.pdf
6 Week 7 Counting Counting lab6.pdf
7 Week 8 No Lab!
8 Week 9 Probability & Number Theory Probability, Number Theory lab7.pdf
9 Week 10 Hashtables Hashtables lab8.pdf
10 Week 11 Midterm II Review mt2_review_student.pdf
11 Week 12 Amortized Analysis Runtime
12 Week 13 AVL Trees Trees lab11.pdf
13 Week 14 No Lab!
14 Week 15 Final Review