Last update: December 2024

This is a mostly-comprehensive archive of recordings of all the lectures I’ve given at UC Berkeley.

For the lectures that I’ve given multiple times, I’ve linked just one version.

CS 61B: Data Structures

I gave roughly half the lectures when I taught this class in Fall 2023. The Testing lecture is from Fall 2024.

Topic Slides Recording
Intro Slides Recording
Defining and Using Classes Slides Recording
Lists 1: References, Recursion, and Lists Slides Recording
Lists 2: SLLists Slides Recording
Lists 3: DLLists and Arrays Slides Recording
Lists 4: Arrays and Lists Slides Recording
Testing Slides Recording
Inheritance 1: Interface and Implementation Inheritance Slides Recording
Inheritance 2: Extends, Casting, Higher Order Functions Slides Recording
Inheritance 3: Subtype Polymorphism, Comparators, Comparable Slides Recording
Inheritance 4: Iterators, Object Methods Slides Recording
Disjoint Sets Slides Recording
ADTs, Sets, Maps, BSTs Slides Recording
B-Trees (2-3, 2-3-4 Trees) Slides Recording
Red Black Trees Slides Recording
Heaps and PQs Slides Recording
Tree and Graph Traversals Slides Recording
Graph Traversals and Implementations Slides Recording
Shortest Paths Slides Recording
Minimum Spanning Trees Slides Recording
Prefix Operations and Tries Slides Recording
Directed Acyclic Graphs Slides Recording
Sorting 1: Selection Sort, Heapsort, Mergesort Slides Recording
Sorting 2: Insertion Sort and Quicksort Slides Recording
Sorting 3: More Quicksort, Quick Select Slides Recording
Sorting 5: Radix Sorts Slides Recording
Sorting 6: Radix vs. Comparison Sorting Slides Recording

CS 61C: Machine Structures

I gave a few lectures when I taught this class in Summer 2022 and Fall 2024.

Topic Slides Recording
Number Representation Slides Recording
Combinatorial Logic, Boolean Algebra Slides Recording
Synchronous Digital Systems (SDS) Slides Recording
RISC-V Datapath Slides Recording
Datapath and Control Logic Slides Recording
Datapath Performance and Pipelining Slides Recording
Distributed Computing and MapReduce Slides Recording
Virtual Memory I Slides Recording
Virtual Memory II Slides Recording

CS 161: Computer Security

I gave the full set of lectures when I taught this class in Fall 2023.

Topic Slides Recording
Introduction and Security Principles Slides Recording
x86 Assembly and Call Stack Slides Recording
Memory Safety Vulnerabilities Slides Recording
Memory Safety Vulnerabilities II Slides Recording
Mitigating Memory Safety Vulnerabilities Slides Recording
Intro to Cryptography Slides Recording
One-Time Pads and Block Ciphers Slides Recording
Block Cipher Modes of Operation Slides Recording
Cryptographic Hashes and MACs Slides Recording
PRNGs and Diffie-Hellman Key Exchange Slides Recording
Public-Key Encryption and Digital Signatures Slides Recording
Certificates, Passwords, and Case Studies Slides Recording
Intro to Web Slides Recording
Cookies and CSRF Slides Recording
XSS and UI Attacks Slides Recording
SQL Injection and CAPTCHAs Slides Recording
Intro to Networking Slides Recording
Low-Level Network Attacks Slides Recording
Transport Layer: TCP and UDP Slides Recording
TLS Slides Recording
DNS Slides Recording
DNSSEC Slides Recording
Denial of Service and Firewalls Slides Recording
Intrusion Detection Slides Recording
Malware and Hardware Vulnerabilities Slides Recording
Tor Slides Recording
Bitcoin Slides Recording

CS 168: Internet/Networking

To be updated in Spring 2025.

CS 188: Artificial Intelligence

I gave a few lectures when I taught this class in Spring 2023 and Fall 2023.

Topic Slides Recording
Uninformed Search Slides Recording
Informed Search Slides Recording
CSPs I Slides Recording
CSPs II Slides Recording
Bayes Nets: Representation Slides Recording
Bayes Nets: Independence Slides Recording
Bayes Nets: Inference Slides Recording
Bayes Nets: Sampling Slides Recording
Machine Learning: Naive Bayes Slides Recording
Machine Learning: Perceptrons Slides Recording
Machine Learning: Neural Networks Slides Recording
Machine Learning: Neural Networks (continued) Slides Recording