4 credits (3-1-0)
Pre-requisites: COL106
Overlaps with: MTL342
Checking 2-edge, 2-node and strong connectivity using DFS, Strongly connected components. Greedy algorithms, minimum spanning trees (Prim/Kruskal), Union-find data structure. Matroids. Divide and conquer algorithms. Polynomial multiplication, DFT and FFT. Dynamic Programming, All pairs shortest paths (Bellman-Ford, Floyd Warshall). s-t flows, ford-fulkerson, edmonds-karp, applications of maxflow Intractability, NP-completeness, Polynomial time reductions. String matching, KMP and Rabin-Karp. Universal hashing and applications. Geometric algorithms like convex hulls, multidimensional data structures, plane sweep paradigm.