CATALOG DESCRIPTION: The design, implementation, and analysis of abstract data types, data structures and their algorithms. Topics include: data and procedural abstraction, linked lists, stacks, queues, binary trees, searching, and sorting. Required for computer science majors.

  • (Formerly EECS 311)
  • This course is a required Core course in the CS curriculum in McCormick and Weinberg


REQUIRED TEXTBOOKS:  "Object-Oriented Data Structures Using JAVA," Nell Dale, Daniel Joyce, Chip Weems, Third Edition

INSTRUCTORSProf. Peter Scheuermann (Fall), Prof. Ian Horswill (Spring)

PREREQUISITES: EECS 211 or EECS 231

DETAILED COURSE TOPICS:

  • Lists
  • Queues, stacks
  • Algorithm analysis
  • Skip lists
  • Binary search trees
  • Balanced trees
  • Priority queues
  • Huffman encoding
  • Self-adjusting structures
  • Splay trees
  • Tries
  • B-trees
  • Hash tables
  • Disjoint sets
  • Graphs
  • Sorting

HOMEWORK ASSIGNMENTS: Five

GRADES:

  • Assignments : 20%
  • Test 1: 20%
  • Test 2: 20%
  • Final: 40%

COURSE OBJECTIVES: