1.5 hours / session. Dynamic Programming, Proof of optimal substructure and greedy property, Prim's algorithm, Kruskal's algorithm. Prof. Erik Demaine Optional Notes on Recurrence Equations: (SS) recurrence relations [PS] (SS) Example Problems [PS] (SS) More Example Problems [PS], [CLRS 4.3-4.6] Optional: [CLRS 28.1-28.2], (DL) Divide and Conquer Merge sort, binary search, powering a number, polynomial multiplication, matrix multiplication, Fibonacci, (LA) Strassen's algorithm, Master method for recurrence [PS], (DL) Linear time sorting Lower bounds on comparison-based sort, decision-tree model, comparison sort, radix sort. (LA) Minimum spanning trees, Union-Find [PS] (EU) Minimum Weights Spanning Tree [PS] (EU) Data Structures for Disjoint Sets [PS] (SS) Minimum Spanning Trees [PS]. Optional Notes on Fast Fourier Transform and Polynomial Algorithms: (PI) Fast Fourier Transform Fast Fourier Transform - Polynomial multiplication (JR) FFT and Multiplication [PDF] [PS] (JR) Polynomial Computation [PDF] [PS], Number Theory and Cryptography Algorithms: (EU) Intro to Public Key Cryptography and Number Theory Algorithms [PS], Optional Notes on Cryptography: (JR) Number Theory and Cryptography Algorithms [PDF] [PS], (PI)Randomized Pattern Matching Pattern matching - average case analysis - Karp-Rabin algorithm – fingerprinting, (PI) Computational Geometry I Closest Pair. Topics and Lecture Notes (Required Readings and Lectures in Bold) (See below for … This book provides a comprehensive introduction to the modern study of com-puter algorithms. Introduction to Graph algorithms (Depth First Search): (SS) Data structures for graphs (SS) DFS and BFS, Optional Notes on Graph Definitions: (JR) Graph Algorithms using Depth First Search [PDF] [PS], (LA) Model, basic algorithms, DFS, BFS, topological sort, strongly connected components [PS] (SS) DFS and BFS [PS], [CLRS 22] Optional: [CLRS Appendix B.4-B.5]. Thomas H. Cormen, Clara Lee, Erica Lin. Notes on introduction to algorithms second ed by. Topics covered include: sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; amortized analysis; graph algorithms; shortest paths; network flow; computational geometry; number-theoretic algorithms; polynomial and matrix calculations; caching; and parallel computing. Freely browse and use OCW materials at your own pace. Send Use OCW to guide your own life-long learning, or to teach others. Whether you've loved the book or not, if you give your honest and detailed thoughts then people will find new books that are right for them. » Computers\\Algorithms and Data Structures. Optional Notes on Universal Hashing and Extensions: (DL) Skip Lists Randomized Insertion & Analysis. [CLRS] Cormen, Leiserson, Rivest, and Stein. Unit 2: Sorting and Trees: 3 GATE Exam - EC Electronics and Communication Engineering, GATE Exam - CS Computer Science and Information Technology, ADVANCED DATA STRUCTURES AND ALGORITHMS There's no signup, and no start or end dates. This is not a replacement for the book, you should go and buy your own copy. »  Participate in the online discussion group for this course. It presents many algorithms … MIT Press (2001) supplemented by Kleinberg, Tardos: Algorithm Design. Lecture Notes, Counting sort, radix sort, lower bounds for sorting, Depth-first search (DFS), topological sorting, Dynamic programming I: Fibonacci, shortest paths, Dynamic programming II: text justification, blackjack, Dynamic programming III: parenthesization, edit distance, knapsack.