Review for Final Neil Tang 04272010 CS 223

  • Slides: 6
Download presentation
Review for Final Neil Tang 04/27/2010 CS 223 Advanced Data Structures and Algorithms 1

Review for Final Neil Tang 04/27/2010 CS 223 Advanced Data Structures and Algorithms 1

Course Survey Please complete the course survey at: http: //www. cs. montana. edu/survey/ CS

Course Survey Please complete the course survey at: http: //www. cs. montana. edu/survey/ CS 223 Advanced Data Structures and Algorithms 2

Time Complexity Analysis Ø Asymptotic notations (O, , ): definition, properties Ø Important functions:

Time Complexity Analysis Ø Asymptotic notations (O, , ): definition, properties Ø Important functions: polynomial, log. N, 2 N Ø 4 Rules Ø Recursion and the master method CS 223 Advanced Data Structures and Algorithms 3

Graphs Ø Basic concepts Ø Adjacency matrix and list Ø Topological sort Ø BFS,

Graphs Ø Basic concepts Ø Adjacency matrix and list Ø Topological sort Ø BFS, DFS and their applications (strong connected components) Ø Shortest path: Dijkstra’s algorithm, the Bellman-Ford algorithm, implementation. CS 223 Advanced Data Structures and Algorithms 4

Graphs Ø Minimum spanning tree: Prim’s algorithm, Kruskal’s algorithm, implementation. Ø Maximum flow: The

Graphs Ø Minimum spanning tree: Prim’s algorithm, Kruskal’s algorithm, implementation. Ø Maximum flow: The Ford-Furkerson algorithm, implementation. Ø Time complexities CS 223 Advanced Data Structures and Algorithms 5

Algorithm Design Techniques Ø Dynamic programming: Recursive equation evaluation, all-pairs shortest path, ordering matrix

Algorithm Design Techniques Ø Dynamic programming: Recursive equation evaluation, all-pairs shortest path, ordering matrix multiplications. Ø Divide and conquer: Quick/merge sort, integer/matrix multiplication. Ø Greedy algorithm: Examples, bin packing algorithms. Ø Time complexity analysis CS 223 Advanced Data Structures and Algorithms 6