You are on page 1of 2

CSC382 SYLLABUS 1) Introduction to Analysis of Algorithms. a) Correctness. b) Amount of work done. i) Examples: - Find an integer in a list of integers.

- Sort a list of integers. ii) Average and Worst-case analysis. c) Amount of space used. d) Simplicity and clarity. e) Optimality. i) Example: - Find maximum element in a list. 2) Classifying functions by their growth rates. a) Big-O. b) . c) . d) Examples. e) Recurrence relations. 3) Binary Search. a) Algorithm (non-recursive). b) Worst-case analysis. c) Optimality. 4) Sort. a) Insertion Sort. i) Worst-Case. ii) Average-Case. b) Divide and Conquer. i) Merge Sort. - Worst-case. j) Quick Sort. - Worst-case. - Average-case. c) Heap Sort. i) Worst-case.

5) Graph Theory a) Introduction (definitions, degree, subgraphs, spanning subgraphs, walks, trees, spanning trees, connectivity). b) Graph representation. c) Depth-Fist Search. i) Determine connectivity. j) Determine cycles. d) Breadth -First search. e) Source-to-all-terminal shortest paths (Dijkstra). f) Minimum-cost spanning tree. i) Prim's algorithm. j) Kruskal's algorithm. 6) Backtracking. a) Definition. b) Examples: i) 4-Queen problem. j) 8-Queen problem. k) Sum of subsets.

You might also like