CS 2123/2121 Overview
CS 2123 and CS 2121 comprise the second required course for the
Bachelor of Science Degree in Computer Science. The first course (CS 1713/1711)
and this course provide
a programming and problem-solving foundation for the rest of the
degree. The first course introduces the basic concepts of computer
science and programming, while this course introduces elementary data
structures (such as stacks, queues, lists, trees) and further develops
important concepts (such as recursion, sorting, and searching).
These courses are offered using Java. Java is an object-oriented
language that allows execution of programs
of platform. Java's clean design and many features make it an ideal
vehicle for introducing state-of-the-art software techniques at an
The specific objectives for CS 2123/2121 are:
Students will also be introduced to Career Services and computer science as a profession.
- Students should be able to use and implement fundamental data structures including
stacks, queues, priority queues, lists, trees and hash tables.
- Students should be able to use object-oriented design to develop and implement
computer-based solutions to problems.
- Students should be able to develop software by using and extending existing classes as
well as designing new classes.
- Students should learn about object-oriented design features of Java including interfaces
- Students should learn to implement search and sorting algorithms including quick
sort, heap sort and hashing.
- Students should learn to use recursion to solve problems.
- Students should be able to do a Big-Oh analysis for their implementations of basic
data structures and algorithms.