| Section | Time | Room | Instructor |
|---|---|---|---|
| L0101 | MW 10-11 | BA 1130 | Paul |
| L0102 | MW 10-11 | WI 1016 | Velian |
| L5101 | W 6-8 | BA 1180 | Paul |
The required reading for the course will be posted here. We will also post useful (or fun) but non-required reading; that will be clearly marked.
We often use the board to teach. We will usually not post summaries of this; please make a friend in class in case you happen to miss a lecture.
Some notes, especially code, will not be posted until after the lectures, and we will sometimes be disorganized and forget to post notes ahead of time. Also, for some lectures, there will only be code that we develop in class.
| Week | M–F | Reading/Notes | 0101 | 0102 | 5101 |
|---|---|---|---|---|---|
| 1 | 9-13 Jan | W1L1.pdf ADTs.pdf CallStack.pdf stack.py | W1L1.pdf ADTs.pdf CallStack.pdf | W1L1.pdf ADTs.pdf CallStack.pdf stackdemo.py | |
| 2 | 16-20 Jan |
|
stack_handout.pdf classes_handout.pdf bad_stack.py stack.py compare_stacks.py eval_expression.py exception_demo.py test_stack.py | Expression Evaluator starter code stack_handout.pdf classes_handout.pdf | stack_handout.pdf classes_handout.pdf bad_stack.py stack.py compare_stacks.py eval_expression.py exception_demo.py test_stack.py |
| 3 | 23-27 Jan |
|
Testing_handout.pdf test_clock_time.py clock_time.py
rec_intro.py fact.py demo.py min.py |
Testing_handout.pdf |
Testing_handout.pdf test_clock.py clocktime.py
rec_intro.py fact.py fib.py minimum.py |
| 4 | 30 Jan - 3 Feb | fib.py course_example.py dirstuff.py min.py exception_demo.py | memtrace.py min.py min_profile.py rev_examples.py Memory Model Example Memory Model Example (printer-friendly) | fib.py betterrosi.py dirstuff.py exception_demo.py min.py | |
| 5 | 6-10 Feb |
Some of you have asked for more recursion reading and practice. Here is a list, including some practice exercises; we're starting trees (another ADT) in week 5, but trees are not on the test.
|
Binary trees
We also had a midterm on Wednesday. |
Binary trees
We also had a midterm on Wednesday. |
Binary trees
We also had a midterm on Wednesday. |
| 6 | 13-17 Feb |
If you haven't yet, please do the reading from week 5. In addition, here are some slides on trees and recursion, and also an introduction to inheritance.
|
Inheritance slides
The lectures were mostly on the chalkboard. Monday: inheritance, tree traversals Wednesday: binary tree insert, traverse, and contains. We also wrote short recursive tree methods, including height and sum, and talked about a process to use to figure out tree recursion algorithms. |
Inheritance slides |
Inheritance slides
The lectures were mostly on the chalkboard. Monday: inheritance, tree traversals Wednesday: binary tree insert, traverse, and contains. We also covered wrote short recursive tree methods, including height and sum, and talked about a process to use to figure out tree recursion algorithms. |
| X | 20-24 Feb | Reading Week: no classes | |||
| 7 | 27 Feb - 2 Mar |
Welcome back!
We're going to finish up tree operations, and in particular tree deletion. This week and next, we're going to talk about heaps; here is another set of slides on heaps, including heapsort (although in the heapsort implementation these slides put the first item in the heap at index 1 and not at index 0; we're going to use index 0). |
bst.py BST Deletion Slides (from Velian's lecture) | BST Deletion Slides BSTNode.py | bst.py BST Deletion Slides (from Velian's lecture) |
| 8 | 5-9 Mar | heapsort.py sorts.py sort_comparison.py | heapsort.py sorts.py sort_comparison.py | ||
| 9 | 12-16 Mar | mergesort.py and quicksort.py; updated sort_comparison.py | mergesort.py and quicksort.py; updated sort_comparison.py | ||
| 10 | 19-23 Mar | linked list reading (from How to Think Like a Computer Scientist) and some linked lists slides that you can use as a reference. The slide code contains errors. Can you figure them out? | queue.py and profile_queues.py | quicksort.py mergesort.py Queue implementations (List vs LL) profile_queues.py | queue.py and profile_queues.py |
| 11 | 26-30 Mar | linkedlist.py | LinkedList.py polynomial.py DoublyLinkedList.py BSTNode.py | linkedlist.py | |
| 12 | 2-6 Apr | closing.pdf ShortReview.pdf | closing.pdf ShortReview.pdf | closing.pdf ShortReview.pdf | |