Skip to main content

RS: https://runestone.academy/ns/books/published/pythonds3/index.html.

DateTopicsReadingsAssignmentsLabs/Projects
01/15 (Mon)MLK Jr. Day
01/16 (Tue)
01/17 (Wed)IntroductionRS: Ch 1.3-1.8HW 01 release
01/18 (Thu)Lab 01: Linux and Python ReviewHW 01Lab 01 release
01/19 (Fri)GitHub, Python Review
Activity Git
RS: Ch 1.9-1.13HW 01Lab 01
01/20 (Sat)HW 01Lab 01
01/21 (Sun)HW 01Lab 01
Week 01: Course Introduction & Python Review
DateTopicsReadingsAssignmentsLabs/Projects
01/22 (Mon)OOPHW 01 dueLab 01
01/23 (Tue)HW 02 releaseLab 01
01/24 (Wed)Exceptions, Debugging, Unit Tests
Activity Worksheet
Activity Gradescope
Read Python Doc about errors & exceptions:
https://docs.python.org/3/tutorial/errors.html
Read Python Doc about debugger: https://docs.python.org/3/library/pdb.html
Read Python Doc about unit test: https://docs.python.org/3/library/unittest.html
HW 02Lab 01 due
01/25 (Thu)Lab 02: Classes, Inheritance, Exceptions
(Prof. Kumar/Prof. Meng will cover the labs while I’m in MIT Reality Hack)
HW 02Lab 02 release
01/26 (Fri)Algorithm Analysis
Activity Worksheet
(Prof. Kumar will cover this lecture while I’m in MIT Reality Hack)
RS: Ch 2.1-2.3HW 02Lab 02
01/27 (Sat)HW 02Lab 02
01/28 (Sun)HW 02Lab 02
Week 02: Debugging & Algorithm Analysis
DateTopicsReadingsAssignmentsLabs/Projects
01/29 (Mon)Algorithm Analysis: Practices
Activity Worksheet
(Prof. Kumar will cover this lecture while I’m in MIT Reality Hack)
RS: Ch 2.4-2.7HW 02 dueLab 02
01/30 (Tue)HW 03 releaseLab 02
01/31 (Wed)Array
Activity Github
HW 03Lab 02 due
02/01 (Thu)Project 1: Audio ProcessingHW 03Project 1 release
02/02 (Fri)2d/nd Array and ApplicationsHW 03Project 1
02/03 (Sat)HW 03Project 1
02/04 (Sun)HW 03Project 1
Week 03: Array
DateTopicsReadingsAssignmentsLabs/Projects
02/05 (Mon)Stack ADT
Activity Github
Activity Gradescope
RS: Ch 3.1-3.4 HW 03 dueProject 1
02/06 (Tue)HW 04 releaseProject 1
02/07 (Wed)Quiz 1 (Algorithm Analysis & Array)
Array Stack & Big-Oh
Activity Github
Activity Gradescope
RS: Ch 3.5HW 04Project 1 checkpoint due
02/08 (Thu)Lab 03: Array StackHW 04Project 1, Lab 03 release
02/09 (Fri)Stack Applications
Activity Github 1
Activity Github 2
Activity Github 3
RS: Ch 3.6-3.9HW 04Project 1, Lab 03
02/10 (Sat)HW 04Project 1, Lab 03
02/11 (Sun)HW 04Project 1, Lab 03
Week 04: Stack
DateTopicsReadingsAssignmentsLabs/Projects
02/12 (Mon)Queue/Deque ADT
Activity Github
Activity Gradescope
RS: Ch 3.10-3.11, 3.15-3.16HW 04 dueProject 1, Lab 03
02/13 (Tue)HW 05 releaseProject 1, Lab 03
02/14 (Wed)(Circular) Array Queue/Deque & Big-Oh
Activity Github
Activity Gradescope
RS: Ch 3.12, 3.17HW 05Project 1, Lab 03 due
02/15 (Thu)Lab 04: Circular Array QueueHW 05Project 1, Lab 04 release
02/16 (Fri)Queue/Deque Applications
Activity Github 1
Activity Github 2
Activity Github 3
RS: Ch 3.13-3.14, 3.18HW 05Project 1 due, Project 1 Reflection and Contribution, Lab 04
02/17 (Sat)HW 05Lab 04
02/18 (Sun)HW 05Lab 04
Week 05: Queue & Deque
DateTopicsReadingsAssignmentsLabs/Projects
02/19 (Mon)Array List
Activity Github
RS: Ch3.19HW 05 dueLab 04
02/20 (Tue)HW 06 releaseLab 04
02/21 (Wed)Nodes, Linked Stack/Queue & Big-Oh
Activity Github
(Prof. Kumar will cover this lecture while I’m in CRA workshop)
RS: 3.20-3.23HW 06Lab 04 due
02/22 (Thu)Project 2: Maze Solver
(Prof. Kumar/Prof. Marchiori will cover the labs while I’m in CRA workshop)
HW 06Project 2 phase 1 release
02/23 (Fri)Singly Linked List & Big-Oh
Activity Github
(Prof. Kumar will cover this lecture while I’m in CRA workshop)
HW 06Project 2 phase 1
02/24 (Sat)HW 06Project 2 phase 1
02/25 (Sun)HW 06Project 2 phase 1
Week 06: List
DateTopicsReadingsAssignmentsLabs/Projects
02/26 (Mon)Quiz 2 (Array Stack and Array Queue)
Doubly Linked List & Big-Oh
Activity Worksheet
HW 06 dueProject 2 phase 1
02/27 (Tue)HW 07 releaseProject 2 phase 1
02/28 (Wed)Circular Linked List & Big-Oh
Activity Github
HW 07Project 2 phase 1 checkpoint due
02/29 (Thu)Lab 05: List ADTHW 07Project 2 phase 1, Lab 05 release
03/01 (Fri)List Applications
HW 07 Workshop
HW 07Project 2 phase 1, Lab 05
03/02 (Sat)HW 07Project 2 phase 1, Lab 05
03/03 (Sun)HW 07Project 2 phase 1, Lab 05
Week 07: More List
DateTopicsReadingsAssignmentsLabs/Projects
03/04 (Mon)Recursion
Activity Github
RS: 4.1-4.6HW 07 dueProject 2 phase 1, Lab 05
03/05 (Tue)HW 08 releaseProject 2 phase 1, Lab 05
03/06 (Wed)Recursion Big-Oh
Activity Github 1
Activity Github 2
RS: 4.7-4.11HW 08Project 2 phase 1, Lab 05 due
02/07 (Thu)Lab 06: RecursionHW 08Project 2 phase 1, Lab 06 release
03/08 (Fri)Searching Algorithms
Activity Github
Bonus 1
HW 08 Workshop
RS: 5.1-5.4HW 08Project 2 phase 1 due, Project 2 phase 2, Lab 06
03/09 (Sat)HW 08Project 2 phase 2, Lab 06
03/10 (Sun)HW 08Project 2 phase 2, Lab 06
Week 08: Recursion & Searching
DateTopicsReadingsAssignmentsLabs/Projects
03/11 (Mon)Spring Recess!
03/12 (Tue)Spring Recess!
03/13 (Wed)Spring Recess!
03/14 (Thu)Spring Recess!
03/15 (Fri)Spring Recess!
03/16 (Sat)Spring Recess!
03/17 (Sun)Spring Recess!
Week 09: Spring Break
DateTopicsReadingsAssignmentsLabs/Projects
03/18 (Mon)Selection Sort (animated)
In-Place Selection Sort (animated)
Insertion Sort (animated)
In-Place Insertion Sort (animated)
Activity Worksheet
RS: 5.6HW 08 dueProject 2 phase 2, Lab 06
03/19 (Tue)HW 09 releaseProject 2 phase 2, Lab 06
03/20 (Wed)Quiz 3 (List and Recursion)
Bubble Sort (animated)
Shell Sort (animated)
Activity Worksheet
RS: 5.8-5.9HW 09Project 2 phase 2, Lab 06 due
03/21 (Thu)Lab 07: Sorting Algorithm 1HW 09Project 2 phase 2, Lab 07 release
03/22 (Fri)HW 09 WorkshopRS: 5.7,5.10HW 09Project 2 phase 2, Lab 07
03/23 (Sat)HW 09Project 2 phase 2, Lab 07
03/24 (Sun)HW 09Project 2 phase 2, Lab 07
Week 10: Sorting I
DateTopicsReadingsAssignmentsLabs/Projects
03/25 (Mon)Project 3 Introduction
Merge Sort (animated)
In-Place Merge Sort (animated)
Activity Worksheet
RS: 5.11HW 09 dueProject 2 phase 2 due, Project 2 Reflection and Contribution, Project 3 Phase 1 release, Lab 07
03/26 (Tue)HW 10 releaseProject 3 Phase 1, Lab 07
03/27 (Wed)Quick Sort (animated)
In-Place Quick Sort (animated)
Activity Worksheet
RS: 5.12HW 10Project 3 Phase 1, Lab 07 due
02/28 (Thu)Lab 08: Sorting Algorithm 2HW 10Project 3 Phase 1, Lab 08 release
03/29 (Fri)HW 10 WorkshopRS: 5.13HW 10Project 3 Phase 1, Lab 08
03/30 (Sat)HW 10Project 3 Phase 1, Lab 08
03/31 (Sun)HW 10Project 3 Phase 1, Lab 08
Week 11: Sorting II
DateTopicsReadingsAssignmentsLabs/Projects
04/01 (Mon)Class CancelledRS: 6.1-6.6HW 10 dueProject 3 Phase 1, Lab 08
04/02 (Tue)HW 11 releaseProject 3 Phase 1, Lab 08
04/03 (Wed)Quiz 4 (Sorting Algorithms)
Tree ADT
Activity GitHub
RS: 6.8HW 10 due
HW 11
Project 3 Phase 1, Lab 08 due
04/04 (Thu)Project 3 WorkdayHW 11Project 3 Phase 1 due, Phase 2 release
04/05 (Fri)Binary Tree Implementation
Activity GitHub 1
Activity GitHub 2
RS: 6.9-6.11HW 11Project 3 Phase 2
04/06 (Sat)HW 11Project 3 Phase 2
04/07 (Sun)HW 11Project 3 Phase 2
Week 12: Tree & Binary Tree
DateTopicsReadingsAssignmentsLabs/Projects
04/08 (Mon)(Binary) Tree Traversal
Activity Worksheet
Activity GitHub
HW 11 Workshop
RS: 6.12-6.13HW 11Project 3 Phase 2
04/09 (Tue)HW 11
HW 12 release
Project 3 Phase 2
04/10 (Wed)Heap & Heap Sort
Activity Worksheet
Activity GitHub
RS: 6.14-6.16HW 11 due
HW 12
Project 3 Phase 2
04/11 (Thu)Lab 09: Tree ADTHW 12Project 3 Phase 2, Lab 09 release
04/12 (Fri)Priority Queue ADT
Activity GitHub 1
Activity GitHub 2
Activity GitHub 3
Bonus GitHub
Bonus 2
RS: 6.16-6.18HW 12Project 3 Phase 2 due, Phase 3 release Lab 09
04/13 (Sat)HW 12Project 3 Phase 3, Lab 09
04/14 (Sun)HW 12Project 3 Phase 3, Lab 09
Week 13: Priority Queue (using Heap) & Ordered Map (using Binary Search Tree)
DateTopicsReadingsAssignmentsLabs/Projects
04/15 (Mon)Map ADT – Ordered Map
Activity GitHub
HW 12 Workshop
HW 12Project 3 Phase 3, Lab 09
04/16 (Tue)HW 12
HW 13 release
Project 3 Phase 3, Lab 09
04/17 (Wed)Map ADT – Unordered Map
Activity Worksheet
Activity GitHub 1
Activity GitHub 2
RS: 8.4HW 12 due
HW 13
Project 3 Phase 3, Lab 09 due
04/18 (Thu)Lab 10: Fast Priority Queue ADTHW 13Project 3 Phase 3, Lab 10 release
04/19 (Fri)Tree Recap
Activity Worksheet
Quiz 5 (Tree ADT)
HW 13Project 3 Phase 3, Lab 10
04/20 (Sat)AVL Tree & Graph ADT (Video1, Video2)HW 13Project 3 Phase 3, Lab 10
04/21 (Sun)HW 13Project 3 Phase 3, Lab 10
Week 14: Unordered Map (using Hash Table) & AVL Tree & Graph ADT
DateTopicsReadingsAssignmentsLabs/Projects
04/22 (Mon)Final PreparationRS: 7.1-7.3HW 13
Final Preparation
Project 3 Phase 3, Lab 10
04/23 (Tue)HW 13
Final Preparation
Project 3 Phase 3, Lab 10
04/24 (Wed)Final PreparationRS: 7.4-7.8HW 13 due
Final Preparation
Project 3 Phase 3, Lab 10 due
04/25 (Thu)Project 3 WorkdayFinal PreparationProject 3 Phase 3
04/26 (Fri)Final PreparationRS: 7.10-7.20Final PreparationProject 3 Phase 3 due
04/27 (Sat)Final Preparation
04/28 (Sun)Final Preparation
Week 15: Final Preparation
DateTopicsReadingsLabs/AssignmentsLabs/Projects
04/29 (Mon)Project 3 Doomsday Showdown
Conclusion
Final Preparation
04/30 – 05/06Prepare for the final examFinal Preparation
05/07Final ExamTime: 7:30-10:30pmFinal due
Room: BRKI065
Week 16 – Exam