COP4530 Data Structures, Algorithms, and Generic Programming II


Syllabus


Program examples, Recitation website


Lecture 1 (08/28): Syllabus, Recursion

Project 1: Enhanced wc program, Files provided, Due: Sept 22 at 11:59pm.

Lecture 2 (09/06): C++ review

Lecture 3 (09/11): C++ variable scope and lifetime, C++ Templates review

Lecture 4 (09/13): Math review, Motivation

Lecture 5 (09/18): Algorithm Analysis

Homework 1. Due: September 25, 11:59pm. Name your file yourname_hw1.docx, and submit on canvas.

Lecture 6 (09/20): Vector

Lecture 7 (09/25): List

Project 2: Vector Class Template Container, Files provided, Due: October 6, 11:59pm.

Midterm to be held on October 16 during class time. The exam covers materials from Lecture 1 to Lecture 9 (Chapters 1 - 3 in the textbook).

Extra points No. 1: Runaway pointer, latest time to claim the credits: Oct. 9, 11:59pm. Files provided.

Lecture 8 (09/27): Stack and Queue

Lecture 9 (10/02): Stack and Queue, Deque

Midterm reading list

Lecture 10 (10/04): Chapter 3 summary, Introduction to Tree

Project 3: Stack and Its Applications -- Maze, Files provided, Due: October 20 (Part 1) and October 27 (Part 2) at 11:59pm.

Lecture 11 (10/09): Binary Tree

Homework 2. Due: October 11, 11:59pm.

Extra credits No. 2: Postfix Calculator, latest time to claim the credits: Oct. 30, 11:59pm. provided files (executable on linprog extra2.x and test file extra2_test.txt)

Lecture 12 (10/18): Binary Search Tree

Homework 3. Due: October 25, 11:59pm. Name your file yourname_hw3.docx, and submit on canvas.

Lecture 14 (10/23, 10/25): AVL tree (balanced binary search tree)

Homework 4. Due: October 30, 11:59pm. Name your file yourname_hw4.docx, and submit on canvas.

Lecture 15 (11/01): B-tree

Project 4: Self Organizing Binary Search Tree, provided files, Due: November 10 at 11:59pm.

Extra credits 4: Post-order traversal, latest time to claim the credits: Nov. 13, 11:59pm, provided files

Lecture 16 (11/06): Btree exercise, Hash Table I

Lecture 17 (11/08): Hash Table II

Lecture 18 (11/13): Priority Queue

Lecture 19 (11/15): Chapters 4 to 6 concept review

Homework 5. Due: October 19, 11:59pm. Name your file yourname_hw5.pptx, and submit on canvas.

Homework 6. Due: October 20, 11:59pm. Name your file yourname_hw6.docx, and submit on canvas.

Homework 7. Due: October 21, 11:59pm. Name your file yourname_hw7.docx, and submit on canvas.

Lecture 20 (11/20): Sorting I

Project 5: Hash Table and Its Application, Files provided, Dictionary used(also in linprog /usr/share/dict/words). Due: November 29 (Part 1) and December 8 (Part 2) at 11:59pm.

Lecture 21 (11/27): Sorting II

Lecture 22 (11/29): Sorting III

Homework 8. Due: December 6, 11:59pm. Name your file yourname_hw8.docx, and submit on canvas.

Lecture 23: Chapters 9: Graph

Final reading list, Final exam to be held on December 14 (Thursday), 3:00-5:00pm in class (as specified in the FSU final exam schedule).

Extra points No. 5: The number puzzle (24), latest time to claim the credits: December 11, 11:59pm. Files provided.

Extra lecture slides on Divide-and-Conquer and Recursion with discussion on extra points no. 5, Zoom recording (This will not be in the final exam, but will help for the extra points challenge No. 5).