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

More info