Courses of Study 2017-2018 
    May 23, 2022  
Courses of Study 2017-2018 [ARCHIVED CATALOG]

Add to Favorites (opens a new window)

CS 2110 - Object-Oriented Programming and Data Structures

(crosslisted) ENGRD 2110 
Fall, spring, summer. 3 credits. Student option grading.

Prerequisite: CS 1110  or CS 1112  or CS 1114  or CS 1115  or equivalent course on programming in a procedural language.


Intermediate programming in a high-level language and introduction to computer science. Topics include program structure and organization, object-oriented programming (classes, objects, types, sub-typing), graphical user interfaces, algorithm analysis (asymptotic complexity, big “O” notation), recursion, data structures (lists, trees, stacks, queues, heaps, search trees, hash tables, graphs), graph algorithms. Java is the principal programming language.

Outcome 1: Be fluent in the use of recursion and object-oriented programming concepts (e.g. classes, objects, inheritance, and interfaces).

Outcome 2: Be able to design and implement nontrivial Java programs (roughly 1000 lines of code), starting from an English language specification.

Outcome 3: Understand graphical user interfaces (GUIs), as expressed in Java.

Outcome 4: Understand asymptotic complexity of algorithms and be able to analyze programs to determine their running times.

Outcome 5: Understand basic data structures taught in the course and be able to implement them and use them in programs.

Add to Favorites (opens a new window)