Sign up for Piazza here
Main textbook: CLRS.
We will also occasionally point to:
We strongly recommend typesetting solutions to homework sets in LaTeX. LaTeX is the standard for typesetting CS/math/etc papers, and will likely come in handy outside CS161.
We'll be using a little bit of Python in CS161. It won't be too intense, but here are some resources to help you get familiar with Python if you haven't seen it before.
Your homeworks should be typed and clearly written with complete sentences and well-organized logic, and should definitely not be your first draft.
When we ask for pseudocode, we are expecting pseudocode that is clear enough that a CS106B student (and certainly the grader) can understand what your algorithm is doing, and could implement it in a language of their choice, without thinking too hard. It is good practice to include an English description of what your pseudocode is doing, to help out the reader. See the example homework before for good and bad examples of pseudocode.
Handout on proof techniques.
If you need a pick-me-up.