Schedule

MCS-178, Spring 2024

Date Reading Topic LabReading Exercises Due
9/3--Set up
Project 1
-
9/4NotesIntroduction
Going over the Syllabus
Python Review
--
9/5--Set Up
Project 1
-
9/6NotesReview of Object Oriented Programming in Python--

9/9NotesReview of Object Oriented Programming in Python
Testing and Debugging
Project 1 due before the start of lecture
--
9/10--Project 2-
9/112.1, 2.16Basic Data Structures--
9/12--Project 2-
9/132.2 - 2.6Link Lists-2.1 - 2.4

9/162.7 - 2.10Double Link Lists
Project 2 due before the start of lecture
--
9/17--Project 3-
9/18NotesSkip Lists--
9/19--Project 3-
9/203.1 - 3.3Basic data structures: stacks-2.6 - 2.9

9/233.1 - 3.3Basic data structures: stacks--
9/24--Project 3-
9/253.4 - 3.6Basic data structures: Queues--
9/26--Project 3-
9/273.4 - 3.6Basic data structures: Queues-3.1, 3.3

9/30-Test # 1 Preparation Lecture
Project 3 due before the start of lecture
--
10/1--No labs (Nobel)-
10/2-No class (Nobel)--
10/3--No labs-
10/4-Test # 1-3.4, 3.6

10/7NotesVariations of stacks and queues--
10/8--Project 4-
10/94.1 - 4.3Recursion--
10/10--Project 4-
10/114.1 - 4.3Recursion-4.8, 4.9

10/14NotesBacktracking--
10/15--Project 4-
10/16NotesBacktracking--
10/17--Project 4-
10/185.1 - 5.3Selection sort
Running time analysis
-5.2, 5.4

10/21-No class (Fall Break)--
10/22--No lab (Fall Break)-
10/23-No class (Fall Break)--
10/24--No lab (Fall Break)-
10/25-No class (Fall Break)--

10/285.4 - 5.5Insertion sort
Running time analysis
Project 4 due before the start of lecture
--
10/29--Project 5-
10/305.10 - 5.11Merge sort--
10/31--Project 5-
11/15.10 - 5.11
5.8 - 5.9
Merge sort
Quick sort
-5.8, 5.10

11/45.8 - 5.9Quicksort--
11/5--Project 5 (Electon day, shorten lab)-
11/64.6, 4.7Runtime analysis--
11/7--Project 5-
11/815.1 - 15.3Dynamic programing vs Memoization-15.1, 15.3

11/1115.1 - 15.3Dynamic programing vs Memoization
Project 5 due before the start of lecture
--
11/12--Project 6-
11/13-No class (Advising Day)--
11/14--Project 6-
11/1515.4, 15.5Dynamic programing vs Memoization-15.6, 15.7

11/1815.6LCS--
11/19--Project 6-
11/2015.6LCS--
11/21--Project 6-
11/22-Test # 2 preparation lecture-18.1 - 18.3

11/25-Test # 2
Project 6 due before the start of lecture
--
11/26--No labs-
11/27-No class (Thanksgiving)--
11/28--No labs (Thankgiving)-
11/29-No class (Thanksgiving)--

12/218.1 - 18.3Object Oriented Programming in Python--
12/3--Project 7-
12/418.1 - 18.3Object Oriented Programming in Python--
12/5--Project 7-
12/618.1 - 18.3Object Oriented Programming in Python-19.1 - 19.3

12/919.5Polymorphism--
12/10--Project 7-
12/1119.10UML and Design--
12/12--Project 7-
12/13-Work on Project 7-19.5, 19.10, 19.11

12/16-Test # 3 preparation lecture
Project 7 is due by midnight (no late projects will be accepted!!!!)
--