Steam-powered Turing Machine University of Washington Computer Science & Engineering
 Syllabus for CSE326: Data Structures
  CSE Home   About Us    Search    Contact Info 

CSE326: Data Structures

Credits
4
Catalog description
Data types, abstract data types, and data structures. Efficiency of algorithms. Sequential and linked implementation of lists. Binary tree representations and traversals. Searching: dictionaries, priority queues, hashing. Directed graphs, depth-first algorithms. Garbage collection. Dynamic storage allocation. Internal and external sorting. No credit to students who have completed CSE 373, CSE 374, or E E 374.
Prerequisites
CSE 321.
Proposed catalog description
Abstract data types and their implementations as data structures. Efficient algorithms employing these data structures, together with their asymptotic analyses. Dictionaries: balanced search trees and hashing. Priority queues: heaps. Disjoint sets with union and find. Graph algorithms: shortest path, minimum spanning tree, topological sort, depth-first and breadth-first search. Sorting. No credit to students who have completed CSE 373, CSE 374, or EE 374.
Textbook(s) and/or other required material
Data Structures and Algorithm Analysis in Java 2nd Ed., Mark Allen Weiss, Addison Wesley: 2007, ISBN: 0-321-37013-9
Course objectives
The objective of this class is to study the fundamental abstract data types and their implementations as data structures, together with efficient algorithms employing these data structures and their asymptotic analyses.
Topics covered
1. Introduction: Data Structures, Abstraction, Recursion 2. Algorithm Analysis 3. Dictionary Abstract Data Type 4. Search Trees: Binary, AVL, 2-3, Splay, B-trees 5. Hashing 6. Priority Queues: Heaps 7. Disjoint Sets: Weighted Union and Find with Compression 8. Sorting: Heapsort, Mergesort, Quicksort, Decision Trees 9. Graph Algorithms and Graph Representations
Course structure
3 hours per week of lecture 1 hour per week of discussion section
ABET Outcomes Assessed
(m) knowledge of discrete mathematics
Additional ABET Outcomes Covered
(a) an ability to apply knowledge of mathematics, science, and engineering
(e) an ability to identify, formulate, and solve computer engineering problems
(k) an ability to use the techniques, skills, and modern computer engineering tools necessary for engineering practice
Last edited by
rea
Last modified
06:37pm 10 Feb 2007


CSE logo Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to webmaint]