Transcript
Page 1: Review for Final  Neil Tang 04/27/2010

CS223 Advanced Data Structures and Algorithms 1

Review for Final Review for Final

Neil TangNeil Tang04/27/201004/27/2010

Page 2: Review for Final  Neil Tang 04/27/2010

CS223 Advanced Data Structures and Algorithms 2

Course SurveyCourse Survey

Please complete the course survey at:

http://www.cs.montana.edu/survey/

Page 3: Review for Final  Neil Tang 04/27/2010

CS223 Advanced Data Structures and Algorithms 3

Time Complexity AnalysisTime Complexity Analysis

Asymptotic notations (O, , ): definition, properties

Important functions: polynomial, logN, 2N

4 Rules

Recursion and the master method

Page 4: Review for Final  Neil Tang 04/27/2010

CS223 Advanced Data Structures and Algorithms 4

GraphsGraphs

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.

Page 5: Review for Final  Neil Tang 04/27/2010

CS223 Advanced Data Structures and Algorithms 5

GraphsGraphs

Minimum spanning tree: Prim’s algorithm, Kruskal’s algorithm, implementation.

Maximum flow: The Ford-Furkerson algorithm, implementation.

Time complexities

Page 6: Review for Final  Neil Tang 04/27/2010

CS223 Advanced Data Structures and Algorithms 6

Algorithm Design TechniquesAlgorithm 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


Recommended