Syllabus

This is a rough schedule of topics for each day and the release and due dates for each homework assignment.

Class topics and homework information may change over the course of the term. Please treat this schedule as a rough guide for seeing what we’ll be focusing on, and expect that there will be shifts as the term progresses. However, I will put all relevant links on this page, so consider this a quick reference for what we have seen so far (that is easier to search than Moodle). Many of the links for future content will be invalid until we get closer to that date.

Preparation should be completed before the class day that they are listed. Class is structured expecting that you have completed the preparation activities and responded to them on Moodle.

Date Homework/Preparation Due In Class Homework Out
Week 1   Intro to Kotlin  
9/15 Intro Prep Slides, Kotlin Scavenger Hunt  
9/17 Kotlin Basics Prep Slides, Mutables and Functions, Predictions Lab  
9/19 Classes and Null Safety Slides, Kotlin Classes Lab HW1: Lunar Lander
Week 2   Analysis  
9/22 Inheritance and Interfaces Prep Slides, Interfaces Lab  
9/24 Analysis Prep Slides, Analysis Lab  
9/26 HW1; Recursion Prep Slides, Recursion Lab HW2: Computational Complexity
Week 3   Stacks and Linked Lists  
9/29 Exam 1 Slides  
10/1 Stacks and Backtracking Prep Slides, Stack Lab  
10/3 HW2;Linked Lists Prep Slides, Linked List Lab HW3: Solving Mazes
Week 4   Queues and Hashing  
10/6 Queues Prep Slides, Queues Lab  
10/8 Doubly-linked Lists and Deques Prep Slides, Doubly-Linked List Lab  
10/10 HW3, Sets and Hashing Prep Slides, Hashing Lab HW4: Deck of Card Operations
Week 5   Hashing  
10/13 Exam 2 Slides  
10/15 Rehashing Prep Slides  
10/17 HW4, Trees and Traversals Prep Trees HW5: Cuckoo Hashing;
Week 6   Trees  
10/20   Midterm break!  
10/22 Prefix Trees Prep Slides  
10/24 HW5; Binary Search Trees Slides HW6: Word Counter
Week 7   Search Trees  
10/27 2-3 Trees Prep Slides  
10/29 Graphs Prep Slides  
10/31 HW6; Graph Searches Prep   HW7: IMDB Graph
Week 8   Sorting  
11/3 Exam 3 Slides  
11/5 Heaps and PQs Prep ; Slides  
11/7 Mergesort Prep Slides  
Week 9   Search Trees  
11/10 HW7; Quicksort Prep Slides HW8: Sorting
11/12 Heapsort Prep Slides  
11/14 Exam 4 Slides  
Week 10   Wrapping up  
11/17 HW8; TBD Slides  
11/19 No prep; All revisions due 10pm Review and Revise  
11/21   Reading days!  
Exam Period      
  Self-scheduled Exam