COP 4530-0002: DATA STRUCTURES II - 2026 Fall

Undergrad Course, Florida State University, 2026

Administrivia

  • 📢 Instructor: Dr. Yushun Dong (yd24f[at]fsu[dot]edu)
  • 💡 Teaching Assistants: To be determined (email to be determined)
  • 📅 Time: Mondays & Wednesdays, 4:50 pm-6:05 pm (ET)
  • 🏫 Location: HWC 2400
  • 🔍 Instructor Office Hours: Monday and Wednesday (6:05 to 7:05 PM at BELLAMY BLDG 0021).
  • 🔍 TA Office Hours: To be determined.
  • 🎒 Format: In-person only (unless there is a drastic change in the situation).

Course Overview

🚀 Welcome to the wonderful world of data structures, algorithms, and generic programming — the course where you graduate from “someone who writes programs” into “someone who thinks like a computer scientist”! Almost every nontrivial program lives or dies by how well it organizes its data, and in this course you’ll build, from the ground up, the toolkit that every serious software engineer relies on: vectors, linked lists, stacks, queues, trees, hash tables, priority queues, and graphs. We’ll learn not just how these structures work, but why one of them is blazing fast where another grinds to a halt. ⚡

📘 Along the way you’ll master algorithm analysis (Big-O and friends), the art of generic programming with C++ templates, and the habit of always asking “can this be smaller, faster, cleaner?” This is a hands-on, code-every-week kind of course: you’ll attend lectures, take weekly in-class coding quizzes, present and debate your own solutions with your classmates, and demonstrate your mastery on a midterm and a final. You are expected to have solid C++ programming skills and a working knowledge of basic discrete mathematics. If you love the feeling of an elegant solution clicking into place — you’re going to have a blast. 🎉

Textbook

Data Structures and Algorithm Analysis in C++ (4th Edition)

Author: Mark Allen Weiss

Publisher: Prentice Hall, 2013 — ISBN: 9780132847377

📗 The textbook is a great companion to the lectures, but our quizzes and exams are built around what we do in class, so showing up and coding along is your best friend.

Prerequisite

Recommended: COP 3330 (Object-Oriented Programming) and MAD 2104 (Discrete Mathematics).

You should be comfortable writing and debugging C++ (classes, pointers, references, and templates) and reading basic mathematical proofs. 🧩 If your C++ is a little rusty, brush up on classes, dynamic memory, and templates before the first quiz — we hit the ground running!

Grading

Your grade comes from exactly three components — 9 * quizzes, 1 * mid-term exam, and 1 * final exam.

  • Quizzes (60%): There will be 9 quizzes, all held on Wednesdays across the semester. Some are short (half a class period) and some are long (a full class period). Every quiz is an algorithmic coding problem built on the data structures and algorithms we cover in lecture. We don’t just check whether your code compiles and runs correctly — we also grade how clean and elegant your algorithm is, how fast it runs, and how much time and memory it consumes. All of these factor into your score. Your quiz grade is the average of your best 7 out of 9 quizzes.
    • 💻 All quizzes are coded and submitted on your laptop in class, so bring your laptop to every class.
    • 🤖 You are allowed to use AI tools (e.g., ChatGPT, Gemini, Claude) and to search the web during all quizzes. Yes, really!
  • Solution Analysis (folded into your quiz grade): After every quiz (whether short or long), all students must prepare presentation slides covering the entire quiz and be ready to present them at the next solution-analysis session. The Monday after each quiz is that session. We call on students at random to present — 3–6 presenters per session — and each presenter should cover: their understanding of the problem, how they coded their solution, where it could be optimized in terms of runtime and memory, and answering classmates’ questions.
    • ✅ If you are called and deliver a complete 15-minute presentation, the corresponding quiz from the previous week is recorded as a full score. The full 15 minutes is a hard requirement — fall short and you will not receive the full score.
    • ❌ If you are called but absent, that week’s quiz is recorded as a 0 score. We want everyone to exchange and share their own ideas, thoughts, and solutions; this penalty applies to those unwilling to present, learn, and share in class together.
  • Mid-term Exam (20%): Held during class on 9.30 during lecture time, taking up a full class. All exams are paper-based and handwritten only — no electronic devices of any kind are allowed.

  • Final Exam (20%): Held on 12.7 (Monday) during finals week (12.7 – 12.11) at 5:30 p.m. – 7:30 p.m. at HWC 2400. As with the mid-term, this is a paper-based, handwritten exam — no electronic devices of any kind are allowed.

Schedule

DateTopicMaterialsNotes
8.24 (Monday)Course intro; recursion & C++ review (classes, pointers, the Big-Five) Classes begin. Day 1 attendance required by FSU
8.26 (Wednesday)C++ templates & generic programming; scope and lifetime  
8.31 (Monday)Math review & proof techniques (induction)  
9.2 (Wednesday)Algorithm analysis: asymptotic notation  
9.7 (Monday)🏖️ No class. Labor Day
9.9 (Wednesday)Vector (dynamic arrays, iterators, amortized cost) Quiz (short) included.
9.14 (Monday)Solution analysis: vector Solution analysis (short) included.
9.16 (Wednesday)List (linked lists, STL list interface) Quiz (short) included.
9.21 (Monday)Solution analysis: list Solution analysis (short) included.
9.23 (Wednesday)Stack, queue & deque Quiz (short) included.
9.28 (Monday)Solution analysis: stack, queue & deque (TA) Q&A session. Solution analysis (short) included.
9.30 (Wednesday)🚨 Mid-term Exam 🚨 Mid-term Exam (TA), No Class.
10.5 (Monday)Mid-term exam solution analysis (TA) Exam recitation lecture.
10.7 (Wednesday)Trees & binary trees Quiz (short) included.
10.12 (Monday)Solution analysis: binary trees Solution analysis (short) included.
10.14 (Wednesday)Binary search trees (BST) Quiz (short) included.
10.19 (Monday)Solution analysis: binary search trees Solution analysis (short) included.
10.21 (Wednesday)Balanced trees: AVL & B-trees Quiz (short) included.
10.26 (Monday)Solution analysis: AVL & B-trees Solution analysis (short) included.
10.28 (Wednesday)Cumulative review (all prior topics) (TA) Long quiz included.
11.2 (Monday)Solution analysis: review quiz (TA) Long solution analysis included.
11.4 (Wednesday)Hash tables (hashing & collision resolution) Quiz (short) included.
11.9 (Monday)Solution analysis: hash tables Solution analysis (short) included.
11.11 (Wednesday)🏖️ No class. Veterans’ Day
11.16 (Monday)Priority queues, binary heaps & sorting  
11.18 (Wednesday)Cumulative review (all prior topics) (TA) Long quiz included.
11.23 (Monday)Solution analysis: review quiz (TA) Long solution analysis included.
11.25 (Wednesday)🏖️ No class. Thanksgiving
11.30 (Monday)Graphs: representation, traversals, shortest paths & topological sort  
12.2 (Wednesday)QA session & final exam review QA Session; no lecture; last class.
12.7 (Monday)🚨 Final Exam 5:30 p.m. – 7:30 p.m. at HWC 2400. No Class.

Course Policies

Missed Exam Policy: Unexcused missed exams and homework will be given a grade of 0. See the University Attendance Policy for a discussion of valid reasons to excuse absences (https://registrar.fsu.edu/bulletin/graduate/information/academic_regulations/).

Grade of “I” Policy: Incomplete (“I”) grades should be recorded only in exceptional cases when a student, who has completed a substantial portion of the course and who is otherwise passing, is unable to complete a well-defined portion of a course for reasons beyond the student’s control. Students in these circumstances must petition the instructor and should be prepared to present documentation that substantiates their case.

University Attendance Policy: Excused absences include documented illness, deaths in the family and other documented crises, call to active military duty or jury duty, religious holidays, and official University activities. These absences will be accommodated in a way that does not arbitrarily penalize students who have a valid excuse. Consideration will also be given to students whose dependent children experience serious illness.

Academic Honor Policy: The Florida State University, Academic Honor Policy, outlines the University’s expectations for the integrity of student’s academic work, the procedures for resolving alleged violations of those expectations, and the rights and responsibilities of students and faculty members throughout the process. Students are responsible for reading the Academic Honor Policy and for living up to their pledge to . . . be honest and truthful and . . . [to] strive for personal and institutional integrity at Florida State University. (Florida State University Academic Honor Policy, found at http://fda.fsu.edu/Academics/Academic-Honor-Policy).

For this course, in particular, every student must complete his/her assignments, quizzes, and exams independently. Showing your work to your peers or making it accessible to them is considered academic dishonesty. You are responsible for ensuring that your work is adequately protected and not accessible to others.

Americans with Disabilities Act: Students with disabilities needing academic accommodation should: (1) register with and provide documentation to the Office of Accessibility Services; (2) bring a letter to the instructor indicating the need for accommodation and what type; (3) meet (in person, via phone, email, skype, zoom, etc…) with each instructor to whom a letter of accommodation was sent to review approved accommodations. Please note that instructors are not allowed to provide classroom accommodation to a student until appropriate verification from the Office of Accessibility Services has been provided. This syllabus and other class materials are available in an alternative format upon request. For more information about services available to FSU students with disabilities, contact the: Office of Accessibility Services, 874 Traditions Way, 108 Student Services Building, Florida State University, Tallahassee, FL 32306-4167; (850) 644-9566 (voice); (850) 644-8504 (TDD), oas@fsu.edu, https://dsst.fsu.edu/oas/

Confidential Campus Resources: Various centers and programs are available to assist students with navigating stressors that might impact academic success. These include the following:

  • Victim Advocate Program University Center A, Room 4100, (850) 644-7161, Available 24/7/365, Office Hours: M-F 8-5 https://dsst.fsu.edu/vap

  • University Counseling Center, Askew Student Life Center, 2nd Floor, 942 Learning Way. (850) 644-8255 https://counseling.fsu.edu/

  • University Health Services Health and Wellness Center, (850) 644-6230 https://uhs.fsu.edu/

Free Tutoring from FSU: On-campus tutoring and writing assistance is available for many courses at Florida State University. For more information, visit the Academic Center for Excellence (ACE) Tutoring Services’ comprehensive list of on-campus tutoring options at http://ace.fsu.edu/tutoring or contact tutor@fsu.edu. High-quality tutoring is available by appointment and on a walk-in basis. These services are offered by tutors trained to encourage the highest level of individual academic success while upholding personal academic integrity.

Late Policy and Make-up Exams:

  • Late assignments will not ordinarily be accepted. If, for some compelling reason, you cannot hand in an assignment on time, please contact the instructor as far in advance as possible.
  • No credit will be given to late course projects.
  • No make-up exams (except under extremely unusual circumstances).

Syllabus Change Policy: Except for changes that substantially affect the implementation of the evaluation (grading) statement, this syllabus is a guide for the course and is subject to change with advance notice.