Daily Schedule

Unit 1: Course and Kotlin Foundations

Sep. 15: Lesson 1 - Introduction to Kotlin
Sep. 17: Lesson 2 - Kotlin Functions and Classes
Sep. 19: Lesson 3 - Computational Complexity
Sep. 22: Lesson 4 - Collections
Sep. 24: Lesson 5 - Interfaces and Lists
Sep. 29: Lesson 7 - Inheritance

Unit 2: Linear Data Structures

Sep. 26: Lesson 6 - Stacks
Oct. 01: Lesson 8 - Linked lists
Oct. 03: Lesson 9 - Stack implementations
Oct. 06: Lesson 10 - Queues
Oct. 08: Lesson 11 - Circular Arrays
Oct. 10: Lesson 12 - Exam Day #1
Oct. 13: Lesson 13 - More General Linked Lists

Unit 3: Set ADT and Hashing

Oct. 15: Lesson 14 - Map/Set ADTs and Hashing
Oct. 17: Lesson 15 - Cuckoo Hashing

Unit 4: Recursion and Trees

Oct. 22: Lesson 16 - Recursion
Oct. 24: Lesson 17 - Recursion and Trees


Labs

Lab 1: Kotlin Scavenger Hunt
Lab 2: Interfaces
Lab 3: Doubly Linked Lists
Lab 4: Recursive Queue


Quizzes and Exams

In place of large, cumulative exams, you will have the opportunity to demonstrate your mastery of the Quiz Learning Objectives through a series of several quizzes. Every four weeks, there will also be an “Exam Day” when you can take new versions of old quiz questions to demonstrate mastery of any missing Learning Objectives.

The final exam, which is scheduled according to the Carleton College final exam schedule, will be similar to Exam Days, except that there will be a new quiz covering the last week of class.

  • Exam Day #1: Friday, October 10th (in class)
  • Exam Day #2: Friday, November 7th (in class)
  • Final: Saturday, November 22nd (3:30pm-6:00pm)