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, Sec. 20), Prof. Johnsen (Fall Sec. 21) Prof. Ian Horswill (Spring, Sec. 20)

PREREQUISITES: EECS 211 or EECS 230

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: