Labs
Labs are due the next day two hours before your lab's start time. For example, if your lab begins at 3 PM, Tuesday's lab will be due on Wednesday at 1 PM. This deadline is meant to be fair for those in labs that occur later in the day. Both students in a partnership must submit the files.
Number | Title | Concepts |
---|---|---|
1 | Git & Intro to Java | Java, Eclipse |
2 | Primitives & References | While loops, if-else statement |
3 | Conditionals, Loops, Arrays | Objects, Box and Pointer Diagrams |
4 | OOP & Scope | Arrays, TDD, JUnit |
5 | Linked Lists I | For Loops, Arrays, Collections |
6 | Linked Lists II | Inheritance, Polymorphism, Abstract Classes, Interfaces |
7 | Asymptotic Analysis | Exceptions, Try-catch suites, Invariants |
8 | Exceptions, Invariants, Testing | Iterators, Iterables, Enhanced for-loop, Generic classes |
9 | Collections, Interfaces, Abstract Classes | Linked Lists, Asymptotics, Big-O |
10 | Iterators, Generics | Destructive vs Non-destructive methods |
11 | Equality, Comparison, and Java 8 | Encapsulation/Wrapper Classes |
12 | Trees I | Hash Tables, HashMaps, Load Factors, Linear Probing |
13 | Trees II | Hash functions for Arbitrary Objects, Memoization |
14 | Binary Search Trees | Trees, Binary Trees |
15 | Hashing I | Depth-first Search, Breadth-first Search |
16 | Hashing II | Binary Search Trees, Comparables, Insertion into a BST |
17 | Balanced Search Trees | Tree-based Maps, Deletion from a BST |
18 | Heaps, Priority Queues | AVL-Trees, 2-3-4 Trees, Tries |
19 | Graphs | Array-based BSTs, Priority Queues, Binary Heaps, Heapify |
20 | Graph Algorithms | Graphs, Graph Representations, Topological Sorting |
21 | Comparison-Based Sorts | Dijkstra's Algorithm, Web Crawling, Garbage Collection |
22 | Counting-Based Sorts | Insertion Sort, Selection Sort, Heap Sort, Merge Sort, Quick Sort |
23 | Disjoint Sets & Kruskal's Algorithm | Quickselect, Counting Sort, Radix Sort |
24 | Regex | Quickselect, Counting Sort, Radix Sort |
Projects
Number | Title | Concepts | Due Date |
---|---|---|---|
1 | Enigma | TBA | Sat 7/2, 12 PM (noon) |
2 | Bear Maps: Rastering | TBA | Sat 7/23, 12 PM (noon) |
3 | Bear Maps: Routing | TBA | Sat 8/6, 12 PM (noon) |