CMSC420 Advanced Data Structures (Section 0201), Fall 2021
Class Venue and Time: ESJ 2208, TuTh 11AM - 12:15PM
tl;dr -- Students: please add
yourselves to the Piazza page for
the class! We will use Piazza extensively.
Office: IRB 4164, Phone: 301-405-2695
Instructor's Office Hours: By Zoom Mon, Wed 9-10AM (Zoom link will be shared on Piazza), or by
appointment (please email Aravind)
Sweta Agrawal (sweagraw AT umd), Hong-Min Chu (hmchu AT CS),
Yunheng Han (yhhan AT umd), Dhruva Sahrawat (dhruva7 AT umd), and
Niall Luke Williams (niallw AT CS).
TA Office Hours: TBA.
Course Time and Location: Tue, Thu
11-12:15, ESJ 2208
Textbook, Lecture Notes and Related Resources
There is no required text; we will very closely follow Prof. David Mount's lecture notes at
The books below are suggested reference material.
- Mark Allen Weiss, Data Structures and Algorithm Analysis in Java 3rd Edition,
Addison-Wesley, 2012, ISBN: 978-0-132-57627-7.
- Clifford A. Shaffer, Data Structures & Algorithm Analysis in Java,
Dover Publishing, 2013, ISBN: 978-0-486-48581-2. Available online.
- M. T. Goodrich, R. Tamassia, M. H. Goldwasser, Data Structures and Algorithms in Java, 6th Edition,
Wiley, 2014, ISBN: 978-1-118-77133-4.
- Hanan Samet, Foundations of Multidimensional and Metric Data Structures,
Morgan Kaufmann, 2006, ISBN: 978-0-123-69446-1.
Aravind's Pledge to the Students
Your education is very important to me, and I respect each of you regardless
of how you do in the class. My expectations of you are that you attend class
and pay full attention, and give enough time to the course.
I strongly encourage you to ask questions in class,
and to come to the office hours (mine or the TAs')
with any further questions. We can have a
very enjoyable educational experience if you pay attention
in class, give sufficient time to our course,
and bring any difficulties you have promptly to our attention. I look forward
to our interaction both inside and outside the classroom.
This course presents fundamental data structures, the algorithms for building and maintaining them,
and the mathematical methods for analyzing their efficiencies. Applications in areas such as
information retrieval, text processing, operating systems, and geographic information systems
will also be discussed. Course material will be reinforced through mathematically-oriented
homework problems and programming assignments.
Description, properties, and storage allocation functions of data structures including
balanced binary trees, B-Trees, hash tables, skiplists, tries, kd-trees and quadtrees.
Algorithms for manipulating structures. Applications from areas such as string processing,
computer graphics, information retrieval, computer networks, computer vision, and
We will closely follow Prof. David Mount's Spring 2021 class structure from
Grading, Homework, and Exams
There will be a combination of written homeworks (about three), programming assignments (about four),
two midterm exams, and a final exam.
All homework and programming assignments are to be done individually, but discussions with
classmates are encouraged: just list the classmates you discussed the assignment with.
Weight of assignments: two midterm exams (15% each), written homeworks (20-25% total),
programming assignments (20-25% total), and final exam (25%).
The mid-term dates will be announced soon.
Unless otherwise noted, the following late policy shall be applied to all course work (written homework assignments and programming assignments).
- Up to 6 hours late: 5% of total
- Up to 24 hours late: 10% of the total
- For each additional 24 hours late: 20% of the total
Any online exams must be submitted by the deadline. Late exam submissions will receive zero points.
Students are strongly encouraged to complete their course evaluations;
please do so at the CourseEvalUM
website when it is ready.
Academic Accommodations for Disabilities
Any student eligible for and requesting reasonable academic accommodations
due to a disability is requested to provide, to the instructor in class or by email, a letter of accommodation from the Office of Disability Support
Services (DSS) within the first two weeks of the semester.
COVID-19--related issues, Excused Absences, Academic Integrity, and Additional Info.
Please see the Masking mandate at https://umd.edu/virusinfo/emails/080621.
For COVID-19--related Disability Accommodations & Requests for
Consideration, see https://umd.edu/virusinfo/emails/063021-2.
The policy on excused absences is at https://www.ugst.umd.edu/V-1.00(G).html.
Please see the university's policies on various important issues.