Set your preference
Font Scaling
Default
Page Scaling
Default
Color Adjustment

MTH524A - Algorithms

IITK

Prerequisites:

3-0-0-9

Course Contents

Preliminaries: Introduction to algorithms; Analyzing algorithms: space and time complexity; growth of functions; summations; recurrences; sets, etc. Greedy Algorithms: General characteristics; Graphs: minimum spanning tree; The knapsack problem; scheduling. Divide and Conquer: Binary search; Sorting: sorting by merging, quick sort. Dynamic Programming: Elements of dynamic programming; The principle of optimality; The knapsack problem; Shortest paths; Chained matrix multiplication. Graph Algorithms: Depth first search; Breadth first search; Backtracking; Branch and bound. Polynomials and FFT: Representation of polynomials; The DFT and FFT; Efficient FFT implementation. Number Theoretic Algorithms: Greatest common divisor; Modular arithmetic; Solving modular linear equations. Introduction to cryptography. Computational Geometry: Line segment properties; Intersection of any pair of segments; Finding the convex hull; Finding the closest pair of points. Heuristic and Approximate Algorithms: Heuristic algorithms; Approximate algorithms; NP hard approximation problems. 


 

Topics

Current Course Information

Instructor(s):

Number of sections:

Tutors for each section:

Schedule for Lectures:

Schedule for Tutorial:

Schedule for Labs: