Announcements
[Past Announcements]
Date | Category | Announcement |
---|---|---|
11/17 | Projects |
Project 3 and its skeleton are now released. You should also update
your copy of cs61b-software by going into that
directory and issuing
git pull --rebaseThere are several project 3-related .jar files in this new version. They allow you to test parts of your code against parts of our solutions. |
11/7 | Projects | The git-bug command (available on the instructional machines and in cs61b-software) will send us a useful bug report including all your code and a message about what problem you are having with it. It requires that you commit and push your work (as you should be doing anyway) and that you provide a text file containing a description of the problem you are seeing. Please use this instead of screenshots, emails of code snippets, etc., which are almost never sufficient for debugging purposes. See also the Piazza post linked to from this announcement. |
9/9 | Admin | The new "Scores" tab on the toolbar at the top of this page shows you your current grades (when there are some anyway), submissions, and (where the autograder is running) links to logs produced by the grading scripts. |
Calendar
Legend:
- HFJ: Head First Java
- AJR: A Java Reference
- DSIJ: Data Structures (Into Java)
Week | Date | Reading | Lecture | Discussion | Lab | Assignments/Exams |
---|---|---|---|---|---|---|
1 | Mon 8/22 | No classes | No discussion section | javac, java, git | HW0: A Few Java Exercises (due 9/2) |
|
Wed 8/24 | HFJ 1-26 | Intro, Hello World Java [slides] |
||||
Fri 8/26 | AJR 1.1-1.9 | A Little Programming [slides][code] |
||||
2 | Mon 8/29 | HFJ 50-62 | Developing a Sort, Unit Testing [slides][code] |
Intro to Java
[Solution] |
IntLists and GJDB | HW1: JUnit testing, basic syntax, and linked lists (due 9/9) Miniproject 0: Cube Puzzle (due 9/19) |
Wed 8/31 | HFJ 27-36. AJR Chapter 4 | Values and Containers [slides][code] |
||||
Fri 9/2 | Simple Pointer Manipulation [slides][code] |
|||||
3 | Mon 9/5 | No classes |
Pointers
[Solution] |
DblIntLists and Collections (+IntelliJ) | ||
Wed 9/7 | HFJ 670 | Arrays [slides][code] |
||||
Fri 9/2 | HFJ 73-87 | Object-Based Programming [slides][code] |
||||
4 | Mon 9/12 | HFJ 168-191, 236-265, 287-293 | Object-oriented Mechanisms [slides] |
More objects and arrays
[Solution] |
Mostly Miniproj0 | Project 1: The Enigma (due 10/10) HW2: Arrays and Lists of Lists (due 9/23) |
Wed 9/14 | HFJ 200-229 | Interfaces and Abstract Classes [slides] |
||||
Fri 9/16 | HFJ 73-87 | Interfaces and Abstract Classes [slides][code] |
||||
5 | Mon 9/19 | Examples: Comparable and Reader [slides][code] |
Inheritance
[Solution] |
Collections, Iterators, and Iterables | HW3: OOP, Interfaces, and Inheritance (due 9/30) |
|
Wed 9/21 | HFJ 316-348 | Exceptions [slides] |
||||
Fri 9/28 | HFJ 154-160, 587-593, 665-668 | Packages, Access, Etc. [slides] |
||||
6 | Mon 9/26 | AJR 6.3, 6.4, HFJ 274-310 | Numbers [slides] |
Test review
[Solution] |
Getting started on Proj1 | |
Wed 9/28 | DSIJ Chapter 1 | Complexity [slides] |
||||
Fri 9/30 | Complexity | |||||
7 | Mon 10/3 | DSIJ Chapters 2 and 3 | Collections, Amortization [slides] |
Bits and Algorithmic Analysis
[Solution] |
HW4: Scanners and Patterns (due 10/14) |
|
Wed 10/5 | DSIJ Chapter 4 | Sequences, Some Design Patterns [slides][code] |
||||
Fri 10/7 | Sequences (II) | |||||
8 | Mon 10/10 | DSIJ Chapter 5 | Trees [slides] |
More Algorithmic Analysis
[Solution] |
Competition Problems | Project 2: Ataxx (due 11/10) HW5: Bit Operations, BSTs, and Asymptotic Analysis (due 10/21) |
Wed 10/12 | DSIJ Chapter 6 | Tree searching [slides][code] |
||||
Fri 10/14 | Game trees [slides] |
|||||
9 | Mon 10/17 | DSIJ 6.4, 6.5 | Priority Queues, Range Queries [slides] |
Binary Trees
[Solution] |
Priority Queues and Debugging | |
Wed 10/19 | DSIJ Chapter 7 | Hashing [slides] |
||||
Fri 10/21 | AJR Chapter 10 | Generics [slides] |
||||
10 | Mon 10/24 | DSIJ 8 | Sorting [slides] |
Hashing and Review
[Solution] |
More Debugging | HW6: Hashing and Ranges (due 11/4) |
Wed 10/26 | Sorting (II) [slides] |
|||||
Fri 10/21 | sorting demos | Sorting (III) [slides] |
||||
11 | Mon 10/31 | DSIJ 9 balanced-search demos |
Balanced Search Structures [slides] |
Sorting
[Solution] |
Testing Ataxx | |
Wed 11/2 | Balanced Search Structures (II) [slides] |
|||||
Fri 11/04 | Probablistic Search Structure | |||||
12 | Mon 11/7 | DSIJ 11 | Pseudo-Random Sequences [slides] |
Balanced Search
[Solution] |
Balanced Search Trees | HW7: Sorting (due 11/22) |
Wed 11/9 | DSIJ 12 | Graphs, Introduction [slides] |
||||
Fri 11/11 | Veterans Day: No classes | |||||
13 | Mon 11/14 | Graph Traversals [slides] |
Graphs
[Solution] |
Graphs | Project 3: Fun with Graphs (due 12/7) |
|
Wed 11/16 | A* Search, Minimal spanning trees, Union-find [slides] |
|||||
Fri 11/18 | Dynamic Programming, Git internals [slides] |
|||||
14 | Mon 11/21 | Git internals |
A* Search
[Solution] |
HW8: Graphs (due 12/2) |
||
Wed 11/23 | No lecture | |||||
Fri 11/25 | Thanksgiving Holiday | |||||
15 | Mon 11/28 | Slides from Josh Hug | Compression [slides] |
Fun and Review
[Solution] |
||
Wed 11/30 | Garbage Collection [slides] |
|||||
Fri 12/2 | Summary, HKN [slides] |
Lab/Discussion Schedule
Office Hour Schedule
-
Professor Hilfinger's office hours are in 787 Soda Hall. Feel free to drop by whenever the door is open. All other office hours are located in 109 Morgan.