Skip to main content

This course is an introduction to the fundamental data structures of computer science: linked lists, stacks, queues, trees (BSTs, heaps, AVLs and other self-balancing BSTs), hash tables, sets (Union-Find), graphs and their accompanying algorithms. Principles of algorithmic analysis and object reasoning and design will be introduced using mathematical techniques for the notions of both complexity and correctness. More practical issues, such as memory management, searching, sorting and hashing, will also be covered.

Course number
CMSC B151
Instructor
Elizabeth Dinella
Teaching Assistants
Course Staff
Website
https://bmc-cs-151.github.io/
Code Samples From Lecture
Github
Discussion Forum
Piazza
Time and place
Fall 2024, MW 1:10-2:30pm, Location: Park 159
Lab M: 2:40-4:00pm, Location: Park 230
Prerequisites
One of the following courses is required with a grade of 2.0 or better (or permission of the instructor):
  1. CS B110
  2. CS B113
  3. CS H105
Course Readings
Each lecture has an optional accompanying chapter/section of the textbook. We will be using the 6th edition of Data Structures and Algorithms by Goodrich, Tamassia and Goldwasser.

Grading

  • Homeworks: 50%
  • Labs: 5%
  • Midterm: 15%
  • Final: 25%
  • Participation: 5%