← CS Classes

CS 2110 — Object-Oriented Programming and Data Structures

General Information

Intermediate programming in a high-level language and introduction to software engineering. Topics include object-oriented programming (objects, classes, subtypes, encapsulation, polymorphism), program correctness (specifications, invariants, testing), algorithm analysis (asymptotic complexity, big O notation), recursion, data structures (lists, trees, stacks, queues, heaps, hash tables, graphs), iteration and searching/sorting, graph algorithms, and concurrent and event-driven programming (graphical user interfaces, synchronization). Java is the principal programming language.

Full Cornell course description (FA26)

Credits: 4

Prerequisites and Enrollment

Prerequisites: CS 1110 or CS 1112 or equivalent.

Recorded Offerings

SemesterListed instructorsCourse details
Fall 2026Matthew EichhornRoster / syllabus
Spring 2026Matthew EichhornRoster / syllabus

Workload and General Advice

Student contributions have not been added yet. Consult the offering’s syllabus for assignments and assessment details.

Student Experiences

No testimonials yet.

Course information checked against Cornell’s Spring and Fall 2026 rosters on September 18, 2026. The listed semesters are verified examples, not a complete offering history.