CSCI 132: Basic Data Structures and Algorithms ☕
Spring 2023
Quick Links
-Syllabus
| 📅 Date | 📋 Topic | 📖 Reading | 📊 Slides + Lecture Recording | 📝 Assignment |
|---|---|---|---|---|
| Wednesday January 18th | Syllabus | Eclipse IDE Install Tutorial | Slides Lecture Recording | Please fill out the course questionnaire |
| Friday January 20th | Computers and Objects | Slides Lecture Recording | ||
| Sunday January 22nd | ||||
| Monday January 23rd | Python to Java (Variables, Data types, operations) | Slides Lecture Recording Code |
||
| Tuesday January 24th | Lab 1 (Basic Java) | Lab 1 Due | ||
| Wednesday January 25th | Python to Java (OOP, Functions/Methods, If statements) | Slides Lecture Recording Code |
||
| Friday January 27th | Python to Java (Loops, Arrays) | Slides Lecture Recording Code |
||
| Sunday January 29th | ||||
| Monday January 30th | More Java | Slides Lecture Recording Code |
||
| Tuesday January 31st | Lab 2 (Basic Java) | Lab 2 Due | ||
| Wednesday February 1st | (Asynchronous Class) OOP: References + Inheritance | Slides Lecture Recording Code |
||
| Friday February 3rd | Program 1, Inheritance, Static Methods | Slides Lecture Recording Code |
||
| Sunday February 5th | ||||
| Monday February 6th | OOP: Static Methods, Abstract Classes, Interfaces | Slides Lecture Recording Code |
||
| Tuesday February 7th | Lab 3 (Java OOP) | Lab 3 Due | ||
| Wednesday February 8th | Interfaces, Exceptions + Debugging (Rubber duck day) | Slides Lecture Recording Code |
||
| Friday February 10th | OOP: Polymorphism + Wrap up. Program 1 Q+A | Slides Lecture Recording Code |
||
| Sunday February 12th | Program 1 Due | |||
| Monday February 13th | Arrays + ArrayList | Slides Lecture Recording Code |
||
| Tuesday February 14th | Lab 4 (Java OOP) | Lab 4 Due | ||
| Wednesday February 15th | ArrayLists | Early Semester Check-in survey | Slides Lecture Recording Code |
|
| Friday February 17th | Linked Lists | Slides Lecture Recording Code |
||
| Sunday February 19th | ||||
| Monday February 20th | NO Class | Lab 5 Introduction Video | ||
| Tuesday February 21st | Lab 5 (Linked Lists) | Lab 5 Due | Wednesday February 22nd | NO CLASS (reese sick) |
| Friday February 24th | Doubly Linked List | Slides Lecture Recording Code |
||
| Sunday February 26th | ||||
| Monday February 27th | Program 2, Circular Linked List | Slides Lecture Recording Code |
||
| Tuesday February 28th | Lab 6 (Circular Linked List) | Lab 6 Due | ||
| Wednesday March 1st | Growth Rates | Slides Lecture Recording | ||
| Friday March 3rd | Big O | Slides Lecture Recording | ||
| Sunday March 5th | ||||
| Monday March 6th | Review | Midterm Study Guide | Slides Lecture Recording | |
| Tuesday March 7th | No Lab | |||
| Wednesday March 8th | Midterm Exam | |||
| Friday March 10th | Midterm Exam Solution | Slides Lecture Recording | Program 2 Due | |
| Sunday March 12th | ||||
| Monday March 13th | Spring Break- No Class | |||
| Tuesday March 14th | Spring Break- No Class | |||
| Wednesday March 15th | Spring Break- No Class | |||
| Friday March 17th | Spring Break- No Class | |||
| Sunday March 19th | ||||
| Monday March 20th | Lessons Learned so far, + Stacks | Slides Lecture Recording | ||
| Tuesday March 21st | Lab 7 (Big O) | Lab 7 Due | ||
| Wednesday March 22nd | Stacks | MSU Schedule of Classes | Slides Lecture Recording Code |
|
| Friday March 24th | Stacks | Slides Lecture Recording Code |
||
| Sunday March 26th | ||||
| Monday March 27th | Queues | Slides Lecture Recording Code |
||
| Tuesday March 28th | Lab 8 (Stacks) | Lab 8 Due | ||
| Wednesday March 29th | Queues | Slides Lecture Recording Code |
||
| Friday March 31st | Program 3 Help Session (Optional) | |||
| Sunday April 2nd | Program 3 Due | |||
| Monday April 3rd | Queues | Slides Lecture Recording Code |
||
| Tuesday April 4th | Lab 9 (Queues) | Lab 9 Due | ||
| Wednesday April 5th | Stacks and Queues | Slides Lecture Recording Code |
||
| Friday April 7th | No Class | |||
| Sunday April 9th | ||||
| Monday April 10th | (Asynchronous) Sorting (Bubble Sort, Selection Sort) | Slides Lecture Recording Code |
||
| Tuesday April 11th | Lab 10 (Sorting) | Lab 10 Due | ||
| Wednesday April 12th | Recursion | Slides Lecture Recording Code |
||
| Friday April 14th | Sorting (Merge Sort) | Slides Lecture Recording Code |
||
| Sunday April 16th | ||||
| Monday April 17th | Recursion | Slides Lecture Recording Code |
||
| Tuesday April 18th | Lab 11 (Recursion) | Lab 11 Due | ||
| Wednesday April 19th | Sorting (Quick Sort) | Slides Lecture Recording Code |
Program 4 Due | |
| Friday April 21st | NO CLASS | |||
| Sunday April 23rd | ||||
| Monday April 24th | Searching | Slides Lecture Recording Code |
||
| Tuesday April 25th | Lab 12 (Searching) | Lab 12 Due | ||
| Wednesday April 26th | Recursion | Slides Lecture Recording Code |
||
| Friday April 28th | Finish up recursion + sorting | Slides Lecture Recording Code |
||
| Sunday April 30th | ||||
| Monday May 1st | Other Java Constructs | Slides Lecture Recording Code |
||
| Tuesday May 2nd | Lab 13 (Course Evaluation) | Lab 13 Due | ||
| Wednesday May 3rd | Program 5 Help Session | |||
| Friday May 5th | Review | Final Exam Study Guide | Slides Lecture Recording | Rubber Duck Extra Credit Screenshot Due |
| Sunday May 7th | Program 5 Due | |||
| Monday, May 8th @ 2:00 PM | Final Exam |