text: Data Structures & Algorithms IV: Pattern Matching, Dijkstra's, MST, and Dynamic Programming Algorithms: An Online Course from The Georgia Institute of Technology - OpenCourser
  Data Structures & Algorithms IV
  Pattern Matching, Dijkstra's, MST, and Dynamic Programming Algorithms
  This Data Structures & Algorithms course completes the 4-course sequence of the program with graph algorithms, dynamic programming, and pattern matching solutions. A short Java review is presented on topics relevant to new data structures covered in this course. The course does require prior knowledge of Java, object-oriented programming, linear and non-linear data structures. Time complexity is threaded throughout the course within all the data structures and algorithms.
  You will delve into the Graph ADT and all of its auxiliary data structures that are used to represent graphs. Understanding these representations is key to developing algorithms that traverse the entire graph. Two traversal algorithms are studied: Depth-First Search and Breadth-First Search. Once a graph is traversed then it follows that you want to find the shortest path from a single vertex to all other vertices. Dijkstra's algorithm allows you have a deeper understanding of the Graph ADT. You will investigate the Minimum Spanning Tree (MST) problem. Two important, greedy algorithms create an MST: Prim's and Kruskal's.