COURSE CODE: CMSC 204 

COURSE TITLE: Data Structures and Algorithms 

SEMESTER OFFERED: Second Semester

PREREQUISITES: CMSC 201 (recommended)

 

COURSE DESCRIPTION: Abstract data types, their implementations and use in algorithm design

 

COURSE GOAL:

After completing this course, you should be able to:

  • Identify the abstract data type most appropriate for a programming problem;
  • Discuss the different implementations of different abstract data types and describe the algorithms associated with each implementation;
  • Understand and implement the different sorting and searching algorithms; and
  • Analyze the running time and memory requirements of a computer program.

 

COURSE OUTLINE:

  • Arrays
  • Linked Lists
  • Stacks and Queues
  • Binary Trees
  • Binary Search Trees and AVL Trees
  • Heaps
  • Hashing
  • Data Structures for Graphs
  • Complexity Analysis
  • Simplifying Summations
  • Simplifying Recurrences
  • Analysis of Sorting Algorithms