Apr 18, 2024  
OHIO University Graduate Catalog 2019-20 
    
OHIO University Graduate Catalog 2019-20 [Archived Catalog]

Add to Portfolio (opens a new window)

CS 5610D - Data Structures


Various data structures, algorithms associated with data structures, and analysis of algorithms are explored. Topics include analysis of algorithms, dynamic arrays, tree structures, heaps, balanced trees, dictionaries, graphs and graph algorithms, and the complexity of sorting. Graph algorithms for depth first and breadth first search, shortest path, minimum cost spanning trees, and others are covered. Coverage of built in data structures and algorithms in modern programming languages included.

Requisites:
Credit Hours: 4
Repeat/Retake Information: May not be retaken.
Lecture/Lab Hours: 3.0 lecture, 1.0 recitation
Grades: Eligible Grades: A-F,WP,WF,WN,FN,AU,I
Learning Outcomes:
  • Students will develop the ability to analyze simple iterative and recursive functions.
  • Students will develop the ability to solve simple summations and recurrence relations.
  • Students will develop the ability to use graphs and graph algorithms in programs to solve practical problems.
  • Students will develop the ability to use tree traversal techniques for practical applications (e.g., evaluating expressions).
  • Students will gain an understanding and ability to use the basic terminology concerning asymptotic analysis.
  • Students will gain an understanding of basic graph algorithms for searching (breadth first, depth first), finding shortest paths (Dijkstra’s algorithm and Bellman-Ford), and finding minimum cost spanning trees (Kruskal’s and Prim’s algorithm).
  • Students will gain an understanding of the average and worst case analysis of the standard sorting techniques.
  • Students will gain an understanding of the basic data structures and algorithms associated with hash tables and their asymptotic running times.
  • Students will gain an understanding of the basic data structures and operations on heaps and their implementations.
  • Students will gain an understanding of the basic data structures for storing trees (arrays, linked data structures, left-child/right sibling approaches).
  • Students will gain an understanding of the basic graph data structures and terminology.
  • Students will gain an understanding of the basic operations on binary search trees and their asymptotic running times.
  • Students will gain an understanding of the basic operations on graphs and their running times.
  • Students will gain an understanding of the basic tree traversal techniques (pre, post, and inorder traversals) and their asymptotic running times.



Add to Portfolio (opens a new window)