Announcements

  • Project 1 is due June 30 at 11:59pm.

    • Submit by June 29 (today) to earn one extra credit point.
    • Be sure to run --submit early and often to check against hidden tests.
    • Check your submission at ok.cs61a.org.
    • Invite your partner (watch this video).
  • Homework 2 is due June 29 (today) at 11:59pm.
  • Quiz 2 on June 30 may include environment diagrams and higher-order functions.

    • If you have an alternate time or are not enrolled in the class, please arrive at 11:45am.
  • Checkoffs began this week. Find a lab assistant in your lab today or tomorrow to go over one homework or lab assignment with you.
  • If you need an alternate exam time, fill this out: http://goo.gl/forms/FDQix4I5dNXPQDgw2
  • The Hog Contest is now open! Entries are due July 4 at 11:59pm.
  • Project 1 is due June 30 at 11:59pm.

    • Submit by June 29 to earn one extra credit point.
    • Be sure to run --submit early and often to check against hidden tests.
  • Homework 2 is due June 29 at 11:59pm.
  • Tutors have begun small tutoring sessions. Check Piazza for details.
  • Checkoffs began this week. Find a lab assistant in your lab to go over one homework or lab assignment with you.
  • Quiz 2 on Thursday 6/30 may include environment diagrams and higher-order functions.
  • If you need an alternate exam time, fill this out: http://goo.gl/forms/FDQix4I5dNXPQDgw2
  • Homework 0 is due today, June 22, by 11:59pm.
  • Quiz 1 is tomorrow, Thursday, 6/23, at the beginning of lecture.
  • Submitting labs are now worth 2 assignment points each. Lab 1 is due on 6/23 at 11:59pm.
  • Starting with Discussion 1, attending discussion will count toward midterm recovery points.

Welcome to CS 61A! This site is still under construction.

Calendar

Week Date Lecture Reading Handout Homework Project
Introduction Mon 6/20 Introduction
(full) (1pp) (6pp) (01.py)
1.1
1.2
Lab 00: Introduction and Workflow
(due Tue 6/21)
Homework 00
(due Wed 6/22)
Tue 6/21 Functions
(full) (1pp) (6pp) (02.py)
1.3
1.4
Discussion 00: Python (Solutions)
Wed 6/22 Control
(full) (1pp) (6pp) (03.py)
1.5 Lab 01: Python
(due Thu 6/23)
Hog
(due Thu 6/30)
Thu 6/23 Environment Diagrams
(full) (1pp) (6pp) (04.py)
Discussion 01: Control and Environments (Solutions) Homework 01
(due Sun 6/26) (Solutions)
Functions Mon 6/27 Higher-Order Functions
(full) (1pp) (6pp) (05.py)
1.6 Lab 02: Higher-Order Functions
(due Tue 6/28)
Homework 02
(due Wed 6/29) (Solutions)
Hog Contest
(due Mon 7/4)
Tue 6/28 Recursion
(full) (1pp) (6pp) (06.py)
1.7 Discussion 02: Higher-Order Functions (Solutions)
Wed 6/29 Tree Recursion
(full) (1pp) (6pp) (07.py)
1.7 Lab 03: Recursion
(due Thu 6/30)
Thu 6/30 Growth
(full) (1pp) (6pp) (08.py)
2.8 Discussion 03: Recursion (Solutions) Homework 03
(due Mon 7/4)
Data Mon 7/4 No Lecture: Independence Day
Tue 7/5 Data Abstraction
(full) (1pp) (6pp) (09.py)
2.1
2.2
Discussion 04: Data Abstraction (Solutions) Homework 04
(due Thu 7/7)
Maps
(due Tue 7/12)
Wed 7/6 Linked Lists
(full) (1pp) (6pp) (10.py)
2.3 Lab 05: Linked Lists
(due Thu 7/7)
Thu 7/7 Trees
(full) (1pp) (6pp) (11.py)
2.3 Discussion 05: Trees (Solutions)
Mutability Mon 7/11 Mutable Sequences
(full) (1pp) (6pp) (12.py)
2.4 Lab 06: Recursive ADTs and Mutable Sequences
(due Tue 7/12)
Tue 7/12 Mutable Functions
(full) (1pp) (6pp) (13.py)
2.4 Discussion 06: Mutable Functions and Midterm Review (Solutions)
Wed 7/13 Midterm Review Session
(full) (1pp) (6pp) (14.py)
Lab 07: Midterm Review
(due Thu 7/14)
Thu 7/14 Midterm Homework 05
(due Sun 7/17)
Objects Mon 7/18 Object-Oriented Programming
(full) (1pp) (6pp) (15.py)
2.5 Lab 08: Object-Oriented Programming
(due Tue 7/19)
Homework 06
(due Wed 7/20)
Ants
(due Tue 7/26)
Tue 7/19 Inheritance and Interfaces
(full) (1pp) (6pp) (16.py)
2.5
2.7
4.2
Discussion 08: Object-Oriented Programming and Interfaces (Solutions)
Wed 7/20 Mutable Linked Lists
(full) (1pp) (6pp) (17.py)
2.9 Lab 09: Inheritance
(due Thu 7/21)
Thu 7/21 Mutable Trees
(full) (1pp) (6pp) (18.py)
2.9 Discussion 09: Recursive Objects (Solutions) Homework 07
(due Sun 7/24)
Interpretation Mon 7/25 Scheme I
(full) (1pp) (6pp) (19.py)
3.1
3.2
Lab 10: Scheme
(due Tue 7/26)
Homework 08
(due Wed 7/27)
Tue 7/26 Scheme II
(full) (1pp) (6pp) (20.py)
3.5
4.2
Discussion 10: Scheme (Solutions)
Wed 7/27 Interpreters I
(full) (1pp) (6pp) (21.py)
3.3
3.4
Lab 11: Interpreters
(due Thu 7/28)
Scheme
(due Fri 8/5)
Thu 7/28 Interpreters II
(full) (1pp) (6pp) (22.py)
3.4
3.5
Discussion 11: Interpreters (Solutions)
Paradigms Mon 8/1 Logic I
(full) (1pp) (6pp) (23.py)
4.4 Lab 12: Logic
(due Tue 8/2)
Homework 09
(due Wed 8/3)
Scheme Contest
(due Tue 8/9)
Tue 8/2 Logic II
(full) (1pp) (6pp) (24.py)
4.4 Discussion 12: Logic (Solutions)
Wed 8/3 Coroutines
(full) (1pp) (6pp) (25.py)
Lab 13: Coroutines
(due Thu 8/4)
Thu 8/4 Implementing OOP
(full) (1pp) (6pp) (26.py)
2.6 Discussion 13: Final Review (Solutions) Homework 10
(due Tue 8/9)
Applications Mon 8/8 Artificial Intelligence
(full) (1pp) (6pp) (27.py)
Lab 14: TBD
(due Tue 8/9)
Tue 8/9 TBD
(full) (1pp) (6pp) (28.py)
Discussion 14: TBD (Solutions)
Wed 8/10 Algorithms
(full) (1pp) (6pp) (29.py)
Homework 11
(due Wed 8/10)
Thu 8/11 Conclusion
(full) (1pp) (6pp) (30.py)
Fri 8/12 Final Homework 12
(due Fri 8/12)