Introduction to Data Structures - Fall 2026


This course is a continuation of the process of program design and analysis for students with some prior programming experience (functions, loops, and arrays, not necessarily in Java). The course reinforces object-oriented programming techniques, using Java, and covers data aggregates, data structures (e.g., linked lists, stacks, queues, trees, and graphs), and an introduction to the analysis of algorithms that operate on those data structures.


Syllabus


Times, Locations & People

15-121 uses a Piazza forum, where you can ask and answer questions. Find our page at: https://piazza.com/cmu/fall2026/15121. We will add you to this page using your andrew login if you are registered at the start of the semester; contact your professor if you add this class late.

Lectures
Mondays and Wednesdays, 9:30-10:50AM Eastern
All sections: Baker Hall A36 (go to BH 136A and take the stairs/elevator down one level)
Lectures will be IN PERSON unless otherwise announced by the university. There will be NO recordings for the class this semester. Students must attend live, in person, if at all possible. There will be course mini-quizzes to check for attendance and understanding of course content during lecture.
Recitations (Lab)
Section A: 9:00AM-9:50AM Eastern, GHC 5208 (NEW)
Section B: 10:00AM-10:50AM Eastern, GHC 5210 (NEW)
Section C: 9:00AM-9:50AM Eastern, GHC 5210
Recitations will be in-person only, unless otherwise announced by the university.
Instructor
Tom Cortina, tcortina at andrew dot cmu dot edu
Teaching Assistants
Andrews Akwei
Tiffany Liu
Raul Melendez
Allison Xia
Office Hours
See pinned message on Piazza.

Learning Objectives

Upon successful completion of this course, students will be able to:


Required Coures Materials

Laptop It is strongly recommended that students have access to a personal laptop. Mac OSX, Windows and Linux are all acceptable. However, although all of the toolkits with which we work are free and cross-platform, example projects may only be tested on OSX.

Java and Eclipse You will need to install Java and a Java IDE on your personal computer for labs and your homework assignments. You will use the Eclipse environment to edit and run your Java programs. Please see how to install Java and Eclipse in the Extra Help document under Resources of this website. This will also be covered during the first lab.

Online Textbook There is no specific textbook that you are required to purchase. We have posted a link to an online textbook Introduction to Programming Using Java (Version 9, JavaFX Edition) that you can use for supplementary readings about course topics. (Sections of this book will be referenced in the Schedule for your use.)

Additional Textbook Resource If you are looking for a traditional published textbook to use for this course, we recommend Data Structures: Abstraction and Design Using Java (4th Edition) by Elliot B. Koffman and Paul A.T. Wolfgang published by Wiley, 2021. Used editions are available on Amazon and other booksellers online.


Communication Tools

This course uses two software systems:

15-121 uses the Piazza forum, where you can ask and answer questions, and discuss course topics. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and the professor. Rather than emailing questions to the teaching staff, we encourage you to post your questions on Piazza. You should already be “enrolled” on Piazza and Autolab (use your Andrew ID). Please contact your professor if you need to be added.


Class Participation / Quizzes

NOTE CORRECTIONS BELOW AND ON GRADING PAGE

You should plan to attend every single lecture. This is the best place to absorb the new material, ask questions (and listen to other questions), participate in class activities to improve your understanding, and learn to take written notes efficiently (a great skill for your career). Classes will be recorded for this semester only for review purposes before exams.

In order to motivate attendance and participation, there will be weekly quizzes that will be given during class, except for exam weeks and Thanksgiving week. These quizzes will be based on recent course material, and you will be able to use WRITTEN notes during the quiz (but not computer notes unless approved as an accommodation by the Office of Disability Resources). There will be 10 quizzes and we will drop the lowest quiz score. (Missed quizzes are scored as 0.) There are no makeups allowed for quizzes, unless there is a documented illness, family emergency religious observance or approved absence (e.g. CMU-sanctioned event).

Please be present and engaged. You can exist for an hour and a half without tweeting, facebooking, chatting, texting, instagramming, emailing, etc.


Deliverables

Deliverables are activities that will cover material taught in lecture and in the lab. The purpose of these assignments is for you to get more practice opportunities and hands on practice with the content covered in the course. Although the amount that these contribute directly to your grade is small, they will help you prepare for the in-class assessments that make up the bulk of your course grade.

All Deliverables will consist of written conceptual questions and/or programming assignments that must be handed in on time, unless you are given instructions otherwise. Generally, unless otherwise indicated, Deliverables will be due at 11:59pm Eastern on Mondays. Look at the schedules for several exceptions. (If you have a religious observance that lands on a due date, please contact your instructor for accommodations.)

Deliverables are due at a specified date and time. If you miss the deadline (by even one minute, according to Gradescope’s clock), it will be considered late. Deliverables can be submitted late up to 48 hours (2 extra days) for partial credit (max of 90% of the points). No deliverables will be accepted after the 48-hour late period, except in the case of medical or family emergencies or other pre-arranged university-required absences that are approved by the instructor.

In rare cases, students legitimately need more time. In these cases, you will almost certainly need to make up work in multiple courses. You should ask your advisor to contact your professors and help you devise a reasonable plan to catch up. We will be very cooperative with you and your advisor, and you might be surprised how much support you will get. Sometimes --it happens. On the other hand, if all your other courses are fine and you just happened to blow off deadlines in 15-121, and your advisor is not supporting you, we will not be pleased.


Labs

Labs are weekly sessions where TAs and students work through problems connected to the material taught in lecture in the previous week up to the current week. Labs are highly useful as homework preparation and they also provide a collaborative and low stakes environment to practice your new acquired knowledge and skills. For this reason, solutions to the labs will be posted on the schedule after lab.

Bring your laptop, fully charged, and your written notes to lab so you can be productive. There are Linux machines in the classroom, in case you don't have your laptop available.

There will be 11 labs (+ 2 more that will be review sessions but do not count towards your lab grade). The lowest 2 grades of the labs will be dropped.


Examinations

There are 2 midterm exams and 1 (comprehensive) final exam scheduled for the course. See the course Calendar for examination dates, and the Grading section to understand the percentages by which Exams contribute to your grade.

Extended-Time Policy: We gladly accommodate students with university-approved extended time (as approved by the Office of Disability Resources (ODR)). Please be sure to discuss this with the course instructor during office hours as soon as possible. Students must sign up for time with ODR for proctoring at least one week in advance of each exam.

Late Policy: No late / make-up examinations will be administered, except in the case of medical or family emergencies or other university-required absences. For qualifying missed examinations, students should obtain instructor approval before missing the examination.

AN IMPORTANT NOTE ABOUT FINAL EXAMS: Do NOT make travel plans until you have the official final exam schedule, and you know definitively when your last final is. No early exams will be given, and students with conflicts or more than 3 exams in 25 hours might need to take a final on the official makeup day (Mon., Dec 14). Travel cost or a parent booking a trip for you is NOT a valid excuse for an alternate final. NO EXCEPTIONS.


Masks and Food/Drink

In order to attend class meetings in person, all students are expected to abide by all guidelines published by the University, including any timely updates on virus transmission based on the current conditions.

In terms of specific classroom expectations, you are not required to wear a mask, but you are welcome to do so if you wish to, for your own protection or to protect others if you're not feeling well. If you don't feel well and exhibit COVID symptoms, test yourself and wear an N95 mask correctly if you come to class. If you test positive, do NOT come to class. Email your instructor and call UHS for information and treatment. Please respect those who choose to wear a mask in class.

Please refrain from eating and drinking in class. If you need to eat or drink something quickly, please go to an outside area briefly and return back to class when you’re done.


Take Care of Yourself

Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.

All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at https://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.


Disability Accommodations

If you have a disability for which you seek an accommodation, please contact CMU’s Office of Disability Resources (ODR). Staff there will review your disability documentation and work with you to determine appropriate accommodations. The ODR will then provide you with a letter outlining approved accommodations, if any. This letter must be presented to your faculty before any accommodations will be implemented; accommodations are not retroactive. You should contact the ODR as early in the semester as possible.


Community Values

We must treat every individual with respect. We are diverse in many ways, and this is fundamental to building and maintaining an equitable and inclusive campus community. Our community refers to multiple ways that we identify ourselves, including but not limited to race, color, national origin, language, sex, disability, age, sexual orientation, gender identity, religion, creed, ancestry, belief, veteran status, or genetic information. Each of these identities, along with many others not mentioned here, shape the perspectives our students, faculty, and staff bring to our campus.

Each of us is responsible for creating a safer, more inclusive environment.

Unfortunately, incidents of bias or discrimination do occur, whether intentional or unintentional. They contribute to creating an unwelcoming environment for individuals and groups at the university. Therefore, the university encourages anyone who experiences or observes unfair or hostile treatment on the basis of identity to speak out for support, within the moment of the incident or after the incident has passed. Anyone can share these experiences using the following resources:

All reports will be documented and deliberated to determine if there should be any following actions. Regardless of incident type, the university will use all shared experiences to transform our campus climate to be more equitable and just.