Skip to main content
Private & Ivy League

Stanford study guides, course by course

Stanford, CAPrivate R1

Stanford runs on the quarter system: ten weeks from first lecture to final, with midterms landing as early as week four, so falling a week behind costs a tenth of the course. The intro CS sequence and MATH 51 carry the heaviest workload folklore, and several flagship courses — CS 106A, CS 229, CS 231N — publish lectures and assignments publicly, which means half the people searching these codes aren't enrolled at Stanford at all.

Stanford courses use a subject abbreviation plus number — CS 106A, MATH 51, PHYSICS 41 — with letter suffixes marking sequence variants (106A/106B, CHEM 31A/31B) and 200-level numbers shared between advanced undergrads and grad students. The same codes appear in ExploreCourses and on the public course websites that make several of these classes famous far beyond campus.

Fennie is independent and not affiliated with Stanford University.

Use Fennie at Stanford

Computer Science

11

CS 106AProgramming Methodology

CS 106A is Stanford's famous introduction to programming, taught in Python — control flow, functions, decomposition, lists, dictionaries, and graphics — assuming zero prior experience. Its lectures and assignments are public, and through Code in Place it has been taught free to hundreds of thousands of people, so it's studied worldwide by enrolled students and self-learners alike.

CS 106BProgramming Abstractions

CS 106B follows 106A with programming abstractions in C++ — recursion, ADTs and the standard collections, big-O, linked structures, trees, and hashing. It's the course where Stanford CS gets real, and like 106A its materials are public and heavily used by self-learners.

CS 107Computer Organization and Systems

CS 107 takes students from C++ down to the machine: C programming, pointers and memory, bit-level representation, x86-64 assembly, and how the heap actually works — culminating in the famous heap allocator assignment. It's the systems gateway of the Stanford CS core.

CS 103Mathematical Foundations of Computing

CS 103 is Stanford's discrete math and theory gateway — proof techniques, set theory, induction, graph basics, then finite automata, regular languages, and the first look at computability and P vs NP. For most students it's the first course where the deliverable is a proof, not a program.

CS 109Probability for Computer Scientists

CS 109 is probability built for CS — counting, conditional probability, random variables and distributions, the central limit theorem, then maximum likelihood and the first real machine learning algorithms. It bridges the core sequence to CS 221 and CS 229 and is many students' favorite course in the major.

CS 111Operating Systems Principles

CS 111 is Stanford's operating systems course — processes, multithreading and synchronization, scheduling, virtual memory, and file systems — following CS 107 in the systems core. Assignments put you on the implementation side of OS abstractions students previously only consumed.

CS 161Design and Analysis of Algorithms

CS 161 is Stanford's core algorithms course — asymptotic analysis, divide and conquer, randomized algorithms, sorting and selection, hashing, trees, dynamic programming, greedy algorithms, and graph algorithms. It's the course technical interviews are downstream of, and a hinge point of the CS major.

CS 221Artificial Intelligence: Principles and Techniques

CS 221 is Stanford's broad AI foundations course — search, Markov decision processes, reinforcement learning, games, constraint satisfaction, Bayesian networks, and a taste of logic — with homeworks mixing math and substantial coding. It's the survey that maps the whole field before the deeper 22x courses.

CS 229Machine Learning

CS 229 is Stanford's graduate-level machine learning course — generalized linear models, SVMs and kernels, deep learning foundations, unsupervised learning, and learning theory — made world-famous by Andrew Ng's recorded lectures. It's simultaneously a campus rite of passage and one of the most self-studied courses on the internet.

CS 231NDeep Learning for Computer Vision

CS 231N — historically 'Convolutional Neural Networks for Visual Recognition' — covers image classification, backpropagation, CNN architectures, training at scale, and transformers for vision, with assignments implementing it all from NumPy up to PyTorch and a substantial final project. Its public notes and lectures made it the world's default deep learning curriculum.

CS 224NNatural Language Processing with Deep Learning

CS 224N covers modern NLP from word vectors through recurrent networks, attention, and transformers to pretrained language models, with PyTorch assignments and a research-style final project. Chris Manning's recorded lectures made it the standard NLP curriculum worldwide, studied by far more people than ever enroll.

Mathematics

4

Physics

2

Chemistry

1

Economics

1

Statistics

1

Psychology

1

Studying at Stanford?

Upload your course materials and Fennie generates Daily Plans paced to your deadlines — plus chat, flashcards, and quizzes built from your own courses.

Get started free

Other private & ivy league schools