Skip to main content

Common Course Outline

Course discipline/number/title COMP 2247: Algorithms and Data Structures

Catalog Description

Credits 4
Hours/Week 4
Prerequisites (Course discipline/number) COMP 1150, COMP 2243, and READ 0900
Other requirements Prerequisites may be satisfied by equivalent Math and/or Reading placement scores.
MnTC Goals (if any) NA

Course Description

This course covers the principles of complexity of algorithms and problem-solving techniques with data structures. Topics include analysis of algorithm, array lists, linked lists, stacks, queues, binary search trees, sorting searching, and recursive algorithms. In-depth study of object-oriented programming concepts is covered. Additional topics may include iterators, heaps and priority queues, balanced binary search trees, dictionary, hashing and graph algorithms. Programming languages such as Java, Python, or C++ will be used.

Date Last Revised (Month, year)

March, 2023

Outline of Major Content Areas

  1. Object-Oriented Programming concepts including inheritance, polymorphism, abstract method/class, and interface
  2. Analysis of complexity of algorithms
  3. Linked lists
  4. Stacks
  5. Queues
  6. Sorting algorithms
  7. Searching algorithms
  8. Recursion
  9. Binary search trees

Learning Outcomes (General)

The student will be able to:

  1. Analyze complexity of algorithms.
  2. Design and write programs using object-oriented concepts including inheritance, polymorphism, abstract method/class, and interface.
  3. Design and implement data structures including array lists, linked lists, stacks and queues.
  4. Use sorting and search algorithms in programs.
  5. Solve problems using recursive algorithms.
  6. Design and implement binary search trees.
  7. Implement a dictionary data type incorporating hashing algorithms and collision avoidance.

Learning Outcomes (MnTC)

NA

Methods for Evaluation of Student Learning

Methods may include but are not limited to:

RCTC Core Outcome(s)

This course contributes to meeting the following RCTC Core Outcome(s):

Critical Thinking
Students will think systematically and explore information thoroughly before accepting or formulating a position or conclusion.

Special Information (if any)

None