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)

More info