Skip to main content
Link
Menu
Expand
(external link)
Document
Search
Copy
Copied
Knowledge Tree
Personal Line
Foundational
University
Course 1
数学 Math
Math101 高等数学
Math102U Introduction to Linear Alegbra
Math102 线性代数
Math103 工程随机数学
Math103T 概率论与数理统计
Math104 数学物理方法
计算机 EECS
EE101 电路分析
EE103 数字电路
EE117 电磁场
EE117UCB 电磁场
EE118 通信原理
EE120 信号系统
EE120 Signal and System
EE122 工程控制论
EE123 Communication Networks
EE130 Integrated Circuit
EE130M 集成电路
EE215A Analog IC
EE215C RF Circuits
EE215D Analog Microsystem
EE215E Signaling and Synchronization
EE230 Computer Architecture
CS111 Linux Bible
CS112 System Design
CS188 Intro to AI
CS247 Deep Learning
CS261 Deep Generative Models
CS262A Bayesian Network
物理 Physics
Physics100 大学物理
Physics101 Mechanics
Physics101 力学
Physics102 Electricity and Magnetism
Physics102M 电磁学
Physics103 Waves
Physics103 波动学
Physics104 Statistical
Physics104 Quantum
Physics104 量子力学
Physics105 统计力学
生物与化学 Biochem
Chem101 无机化学
Chem102 有机化学
Chem103 分析化学
Chem104 物理化学
NS101 认知神经科学
NS102 Principles of Neural Science
Bio101 动物学
Bio102 植物学
Bio103 微生物学
Bio104 发育生物学
Bio105 生物信息学
Course 2
CS61A - Comp Programs (Sp24)
CS61A - Comp Programs (Su24)
CS61B - Data Structures
CS61C - Machine Struct
CS70 - Discrete Math (Sp23)
CS70 - Discrete Math (Su23)
CS70 - Discrete Math (Su24)
CS161 - Comp Security
CS162 - Operating Systems
CS170 - Algorithms
CS188 - Intro AI
CS189 - Intro ML
CS152/252A - Comp Arch
CS168 - Intro Internet
EE126 - Probability
EE127 - Convex Opt
EE122 - Comm Networks
EE105 - Devices Circuits
EE140 - Analog ICs
EE145B - Imaging
EE147 - MEMS
EE C128 - Control
CS260D - Large-Scale ML
CS247 - Deep Learning I
CS261 - Generative Nets
ECE247 - Deep Learning II
CS184 - Graphics
CS186 - Databases
CS262A - Causal Inference
EE137B - Power Systems
ECE201A - VLSI CAD
ECE201AS - Trustworthy AI
ECE209 - Adv Comp Arch
ECE209AS - AI on Chip
ECE216A - VLSI Design
ECE216B - VLSI DSP
ECE232E - Complex Nets
Research
History Line
Daily
Industry
工业 Industry
MatterFlow
Business
Auto Home Build
Trash Recycling
Public Storage & Used Exchange
Everything Factory / Industry
Supporting
Sensors
Actuators
Computing
Communication
Power & Energy
Structure & Material
Yuantsy
Standards
Static
Running
About
Products (产品)
Values (价值观)
KnowledgeTree (知识树)
General AI Data Center
History Line
Personal Line
Guide (指南)
Basic Philosophy
Research
Search Yuantsy Knowledge Tree
Personal Line
University
Course 2
CS61A - Comp Programs (Sp24)
CS 61A Spring 2024
CS 61A: Structure and Interpretation of Computer Programs
Calendar
Week
Date
Lecture
Textbook
Lab & Discussion Links
Homework & Project
1
Wed 1/17
Welcome
[intro]
Disc 00: Getting Started
1
Fri 1/19
Functions
[01Names Assignment and UserDefined Functions]
[02Environment Diagrams]
[03Defining Functions]
[04Print and None]
[Ch.1.1]
,
[Ch.1.2]
,
[Ch.1.3]
Lab 00: Getting Started
[pdf]
[zip]
HW 01: Functions, Control
[pdf]
[zip]
2
Mon 1/22
Control
[01Multiple Environments]
[02Miscellaneous Python Features]
[03Conditional statements]
[04Iteration]
[Ch. 1.4]
[Ch. 1.5]
Lab 01: Functions, Control
[pdf]
[zip]
2
Wed 1/24
Higher-Order Functions
[01Iteration Example]
[02Control]
[03Control Expressions]
[04Higher-Order Functions]
[04-Higher-Order_Functions_1pp]
[05Functions as Return Values]
[Ch. 1.6]
Disc 01: Control, Environment Diagrams
Hog
[pdf]
[zip]
2
Fri 1/26
Environments
[01Environments for HigherOrder Functions]
[02Environments for Nested Definitions]
[03Local Names]
[04Function Composition]
[05Lambda Expressions]
[06Function Currying]
[Ch. 1.6]
HW 02: Higher-Order Functions
[pdf]
[zip]
3
Mon 1/29
Functional Abstraction
[01Lambda Function Environments]
[02Return]
[03Abstraction]
[04Errors Tracebacks]
Lab 02: Higher-Order Functions,Lambda Expressions
[pdf]
[zip]
3
Wed 1/31
Function Examples
[01Midterm 1 Review]
[02Implementing Functions]
[03Decorators]
Disc 02: Environment Diagrams, Higher-Order Functions
3
Fri 2/2
Function Demos (Optional)
4
Mon 2/5
Midterm 1 (8pm-10pm)
4
Wed 2/7
Recursion
[01SelfReference]
[02Recursive Functions]
Ch. 1.7
Disc 03: Recursion
4
Fri 2/9
Tree Recursion
[01Order of Recursive Calls]
[02Example Inverse Cascade]
[03Tree Recursion]
[04Example Counting Partitions]
Ch. 1.7
HW 03: Recursion, Tree Recursion
[pdf]
[zip]
5
Mon 2/12
Sequences
[01Lists]
[02Containers]
[03For Statements]
[04Ranges]
[05List Comprehensions]
[Ch. 2.1]
[Ch. 2.3]
Lab 03: Recursion, Python Lists
[pdf]
[zip]
5
Wed 2/14
Containers
[01BoxandPointer Notation]
[02Slicing]
[03Processing Container Values]
[04Strings]
[05Dictionaries]
[Ch. 2.3]
Disc 04: Tree Recursion
Cats
[pdf]
[zip]
5
Fri 2/16
Data Abstraction
[01Data Abstraction]
[02Representing Rational Numbers]
[03Abstraction Barriers]
[04Data Representations]
[Ch. 2.2]
6
Mon 2/19
No Lecture: Presidents’ Day
Lab 04: Tree Recursion, Data Abstraction
[pdf]
[zip]
6
Wed 2/21
Trees
[01Trees]
[02Tree Processing]
[03Example Printing Trees]
[04Example Summing Paths]
[05Example Counting Paths]
[Ch. 2.3]
Disc 05: Trees
6
Fri 2/23
Mutability
[01Objects]
[02Example Strings]
[03Mutation Operations]
[04Tuples]
[05Mutation]
[06Mutable Functions]
[Ch. 2.4]
HW 04: Sequences, Trees
7
Mon 2/26
Iterators
[01Iterators]
[02Dictionary Iteration]
[03For Statements]
[04Builtin Iterator Functions]
[05Zip]
[06Using Iterators]
[Ch. 4.2]
Lab 05: Iterators, Mutability
[pdf]
[zip]
7
Wed 2/28
Generators
[01Generators]
[02Generators Iterators]
[03Example Partitions]
[Ch. 4.2]
Disc 06: Iterators, Generators Video
7
Fri 3/1
Objects
[01ObjectOriented Programming]
[02Class Statements]
[03Creating Instances]
[04Methods]
[Ch. 2.5]
HW 05: Generators
[pdf]
[zip]
8
Mon 3/4
Attributes
[01Method Calls]
[02Attribute Lookup]
[03Class Attributes]
[04Bound Methods]
[Ch. 2.5]
Lab 06: Object-Oriented Programming
[pdf]
[zip]
Ants
[pdf]
[zip]
8
Wed 3/6
Inheritance
[01Inheritance]
[02ObjectOriented Design]
[03Attribute Lookup Practice]
[04Multiple Inheritance]
[Ch. 2.5]
Disc 07: OOP Video
8
Fri 3/8
Representation
[01String Representations]
[02String Interpolation]
[03Polymorphic Functions]
[04Special Method Names]
[Ch. 2.7]
HW 06: Object-Oriented Programming, Linked Lists
[pdf]
[zip]
9
Mon 3/11
Composition
[01Linked Lists]
[02Linked List Processing]
[03Linked List Mutation]
[04Linked List Mutation Example]
[05Tree Class]
[06Tree Mutation]
Lab 07: Linked Lists, Inheritance
[pdf]
[zip]
9
Wed 3/13
Efficiency
[01Measuring Efficiency]
[02Memoization]
[03Exponentiation]
[04Orders of Growth]
[05Order of Growth Notation]
[06Space]
[Ch. 2.8]
Disc 08: Linked Lists, Efficiency Video
9
Fri 3/15
Decomposition
[01Modular Design]
[02Example Restaurant Search]
[03Example Similar Restaurants]
[04Example Reading Files]
[05Set Intersection]
10
Mon 3/18
Data Examples
[01Examples Lists]
[02Examples Objects]
[03Examples Iterables Iterators]
[04Examples Linked Lists]
Lab 08: Mutable Trees
[pdf]
[zip]
10
Wed 3/20
No Lecture: Midterm 2 on Thursday
10
Thu 3/21
Midterm 2 (8pm-10pm)
10
Fri 3/22
Large Language Models (Pamela Fox) (Optional)
11
Mon 3/25
No Lecture: Spring Break
11
Wed 3/27
No Lecture: Spring Break
11
Fri 3/29
No Lecture: Cesar Chavez Day
12
Mon 4/1
Scheme
[01Scheme]
[02Scheme Interpreters]
[03Special Forms]
[04Lambda Expressions]
[05More Special Forms]
[06Example Sierpinskis Triangle]
[Ch. 3.1]
[Ch. 3.2]
Lab 09: Scheme
[pdf]
[zip]
HW 07: Scheme
[pdf]
[zip]
12
Wed 4/3
Scheme Lists
[01Lists]
[02Symbolic Programming]
[03List Processing]
[04Example Even Subsets]
[05Discussion Question Even Subsets Using Filter]
[Ch. 3.2]
Disc 09: Scheme, Scheme Lists
12
Fri 4/5
Calculator
[01Exceptions]
[02Example Reduce]
[03Programming Languages]
[04Parsing]
[05SchemeSyntax Calculator]
[06Evaluation]
[07Interactive Interpreters]
[Ch. 3.3]
[Ch. 3.4]
HW 08: Scheme Lists
[pdf]
[zip]
13
Mon 4/8
Interpreters
[01Interpreting Scheme]
[02Special Forms]
[03Logical Forms]
[04Quotation]
[05Lambda Expressions]
[06Define Expressions]
[07Dynamic Scope]
Ch. 3.5
Lab 10: Interpreters
[pdf]
[zip]
Scheme
[pdf]
[zip]
13
Wed 4/10
Programs as Data
[01Programs as Data]
[02Generating Code]
Disc 10: Interpreters Video
13
Fri 4/12
Macros
[01Expressions]
[02Macros]
[03For Macro]
[04Trace]
HW 09: Programs as Data, Macros
[pdf]
[zip]
14
Mon 4/15
SQL
[01Databases]
[02Structured Query Language SQL]
[03Projecting Tables]
[04Arithmetic]
Lab 11: Programs as Data, Macros
[pdf]
[zip]
(Optional) Scheme Contest
[pdf]
[zip]
14
Wed 4/17
Table
[01Joining Tables]
[02Aliases and Dot Expressions]
[03Numerical Expressions]
[04String Expressions]
Disc 11: SQL
14
Fri 4/19
Aggregation
[01Aggregation]
[02Grouping]
HW 10: SQL
[pdf]
[zip]
15
Mon 4/22
Databases (Optional)
[01Create Table and Drop Table]
[02Modifying Tables]
[03Python and SQL]
[04Database Connections]
Lab 12: SQL
[pdf]
[zip]
15
Wed 4/24
Final Examples
[01Trees]
[02Tree Processing]
[03Recursive Accumulation]
[04Designing Functions]
[05Applying the Design Process]
Disc 12: Final Review
15
Fri 4/26
Conclusion Recording
HW 11: Finale Scheme Gallery
[pdf]
[zip]
16
Mon 4/29
No Lecture: RRR Week
16
Wed 5/1
No Lecture: RRR Week
16
Fri 5/3
No Lecture: RRR Week
17
Tue 5/7
Final (11:30am-2:30pm)