CSCI 132: Basic Data Structures and Algorithms ☕
Spring 2024
| 📅 Date | 📋 Topic | 📖 Extra Notes | 📊 Class Content | 📝 Assignment |
|---|---|---|---|---|
| Wednesday January 17th | Syllabus | Eclipse IDE Installation Tutorial | Slides Lecture Recording | Please fill out the Course Questionnaire! |
| Friday January 19th | Python to Java (variables, data types, operations) | Slides Lecture Recording Code |
||
| Monday January 22nd | Python to Java (OOP) | Slides Lecture Recording Code |
||
| Tuesday January 23rd | Lab 1 (Basic Java) | Lab 1 Due | ||
| Wednesday January 24th | Python to Java (OOP, functions/methods, if statements) | Slides Lecture Recording Code |
||
| Friday January 26th | More Java (Loops, Arrays) | Slides Lecture Recording Code |
||
| Monday January 29th | File I/O | Slides Lecture Recording Code |
||
| Tuesday January 30th | Lab 2 (Java OOP) | Lab 2 Due | ||
| Wednesday January 31st | File IO, More Java | Slides Lecture Recording Code |
||
| Friday February 2nd | More Java, Program 1 Discussion | Slides Lecture Recording Code |
||
| Monday February 5th | Inheritance | Slides Lecture Recording Code |
||
| Tuesday February 6th | Lab 3 (Java Arrays and Loops) | Lab 3 Due | ||
| Wednesday February 7th | Interfaces | Slides Lecture Recording Code |
||
| Friday February 9th | (Rubber Duck Day) Polymophism, Static methods, Abstract classes, Exceptions, Debugging | Slides Lecture Recording Code |
||
| Monday February 12th | Dynamic Arrays | Slides Lecture Recording Code |
||
| Tuesday February 13th | Lab 4 (Inheritance) | Lab 4 Due | ||
| Wednesday February 14th | Dynamic Arrays + ArrayLists | Slides Lecture Recording Code |
||
| Friday February 16th | Linked Lists | Slides Lecture Recording Code |
Program 1 Due | |
| Monday February 19th | No class (Presidents Day) | |||
| Tuesday February 20th | Lab 5 (Linked Lists) | Lab 5 Introduction Video | Lab 5 Due | |
| Wednesday February 21st | Doubly Linked List | Slides Lecture Recording Code |
||
| Friday February 23rd | Circular Linked Lists, Program 2 | Slides Lecture Recording Code |
||
| Monday February 26th | Growth Rates | Slides Lecture Recording | ||
| Tuesday February 27th | Lab 6 (Circular Linked Lists) | Lab 6 Due | ||
| Wednesday February 28th | Algorithm Analysis (Big-O) | Slides Lecture Recording | ||
| Friday March 1st | NO CLASS (Work Day) | |||
| Monday March 4th | Big-O, Midterm Review | Slides Lecture Recording | ||
| Tuesday March 5th | No lab! | |||
| Wednesday March 6th | Midterm Exam | Midterm Exam Study Guide | ||
| Friday March 8th | Exam solution, Q + A | Program 2 Due | ||
| Monday March 11th | No class (Spring Break) | |||
| Tuesday March 12th | No lab (Spring Break) | |||
| Wednesday March 13th | No class (Spring Break) | |||
| Friday March 15th | No class (Spring Break) | |||
| Monday March 18th | Mid-Semester Takeaways, Linked List Conclusion | MSU Schedule of Classes | Slides Lecture Recording Code |
|
| Tuesday March 19th | Lab 7 (Big-O) | Lab 7 Due | ||
| Wednesday March 20th | Stacks (Array) | Slides Lecture Recording Code |
||
| Friday March 22nd | Stacks (LL), Program 3 | Slides Lecture Recording Code |
||
| Monday March 25th | Queues (LL) | Slides Lecture Recording Code |
||
| Tuesday March 26th | Lab 8 (Stacks) | Lab 8 Due | ||
| Wednesday March 27th | No class (Reese sick) | |||
| Friday March 29th | No class (University Day) | |||
| Monday April 1st | Queues (Array) | Slides Lecture Recording Code |
||
| Tuesday April 2nd | Lab 9 (Queues) | Lab 9 Due | ||
| Wednesday April 3rd | Stack and Queue Conclusion, Priority Queues | Slides Lecture Recording Code |
||
| Friday April 5th | Program 4, Recursion | Slides Lecture Recording Code |
Program 3 Due | |
| Monday April 8th | Recursion | Slides Lecture Recording Code |
||
| Tuesday April 9th | Lab 10 (Recursion) | Lab 10 Due | ||
| Wednesday April 10th | Sorting (Bubble Sort) (Asynchronous Lecture) |
no in-person lecture | Slides Lecture Recording Code |
|
| Friday April 12th | Recursion | Slides Lecture Recording Code |
||
| Monday April 15th | Sorting (Merge Sort) | Slides Lecture Recording Code |
||
| Tuesday April 16th | Lab 11 (Sorting) | Lab 11 Due | ||
| Wednesday April 17th | No class | Gianforte Hall Groundbreaking Ceremony (2:00 PM) | ||
| Friday April 19th | Sorting (Quick Sort) | Slides Lecture Recording Code |
Program 4 Due | |
| Monday April 22nd | Program 5, Searching | Slides Lecture Recording Code |
||
| Tuesday April 23rd | Lab 12 (Searching) | Lab 12 Due | ||
| Wednesday April 24th | Work Day (no lecture) | |||
| Friday April 26th | Finish up searching and sorting | Slides Lecture Recording Code |
||
| Monday April 29th | Java Generics | Slides Lecture Recording Code |
||
| Tuesday April 30th | Lab 13 (Course Eval) | Lab 13 Due | ||
| Wednesday May 1st | Program 5 Help Session (no lecture) | |||
| Friday May 3rd | Review | Final Exam Study Guide | Slides Lecture Recording | Rubber Duck Extra Credit Screenshot Due |
| Sunday May 5th | Program 5 Due | |||
| Wednesday May 8th 2:00pm - 3:50pm | Final Exam (in person) |