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)
  • Can be taken as EECS 395 during Spring 15'
  • 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, EECS 395)

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: