Lectures
Students can attend lecture in person on campus (5:40–7:40 p.m. Eastern time in One Brattle Square, room 204), participate live online at the time the class meets via web conference, or watch a recorded video on demand.
-
To access the live lecture meetings, go to the course’s site on Canvas and click on the Zoom link in the navigation bar. This will take you to a tool called Gather. Under Course Events, find the event labeled Class: HELIX Classroom and click its Join button.
-
The lectures will be recorded and made available within 24 hours. Use the Class Recordings link on Canvas to access them.
Full coursepack
Optional readings
- Introduction
- notes,
ArrayBag.java - Recursion
- notes, code, solutions to removeVowels practice exercise
- Sorting and algorithm analysis I
- notes, code, solutions to big-O practice exercises
- Sorting and algorithm analysis II
- notes, code
- Linked lists
- notes,
StringNode.java - two simpler versions of
StringNodethat can be traced using Java Tutor:- one tracing a call to
toUpperCase - one tracing calls to
copyanddeleteChar
- Lists, stacks and queues
- notes, code, completed slides on list efficiency
- Binary trees and Huffman encoding
- notes, code, solutions to extra traversal problems
- Search trees
- notes, code,
- a simpler version of
LinkedTreethat can be traced using Java Tutor - Heaps and priority queues
- notes, code
- Hash tables
- notes, code
- Graphs
- notes, code, solutions to extra traversal problems, solutions to extra Dijkstra problem