YoVDO

Design & Analysis of Algorithms

Offered By: NPTEL via YouTube

Tags

Algorithms and Data Structures Courses Algorithm Design Courses Algorithm Analysis Courses Asymptotic Notation Courses Computational Complexity Courses Greedy Algorithms Courses Dynamic programming Courses NP-completeness Courses Divide-and-Conquer Courses Approximation Algorithms Courses

Course Description

Overview

Instructor: Prof. Abhiram Ranade, Department of Computer Science, IIT Bombay. 

This course covers lessons on divide and conquer, greedy algorithm, pattern matching, dynamic programming and approximation algorithms. The main goal of this course teaches you to design algorithms that are fast. In this course, you will study well-defined design techniques through lots of exercises. We hope that at the end of the course you will be able to solve algorithm design problems that you may encounter later in your life.


Syllabus

Lecture - 1 Overview of the course.
Lecture - 2 Framework for Algorithms Analysis.
Lecture - 3 Algorithms Analysis Framework - II.
Lecture - 4 Asymptotic Notation.
Lecture -5 Algorithm Design Techniques : Basics.
Lecture -6 Divide And Conquer-I.
Lecture -7 Divide And Conquer -II Median Finding.
Lecture -8 Divide And Conquer -III Surfing Lower Bounds.
Lecture -9 Divide And Conquer -IV Closest Pair.
Lecture -10 Greedy Algorithms -I.
Lecture - 11 Greedy Algorithms - II.
Lecture - 12 Greedy Algorithms - III.
Lecture - 13 Greedy Algorithms - IV.
Lecture - 14 Pattern Matching - I.
Lecture - 15 Pattern Matching - II.
Lecture -16 Combinational Search and Optimization I.
Lecture - 17 Combinational Search and Optimization II.
Lecture -18 Dynamic Programming.
Lecture 19 Longest Common Subsequences.
Lecture -20 Matric Chain Multiplication.
Lecture - 21 Scheduling with Startup and Holding Costs.
Lecture - 22 Average case Analysis of Quicksort.
Lecture - 23 Bipartite Maximum Matching.
Lecture - 24 Lower Bounds for Sorting.
Lecture -25 Element Distinctness Lower Bounds.
Lecture -26 NP-Completeness-I -Motivation.
Lecture - 27 NP - Compliteness - II.
Lecture - 28 NP-Completeness - III.
Lecture - 29 NP-Completeness - IV.
Lecture - 30 NP-Completeness - V.
Lecture - 31 NP-Completeness - VI.
Lecture - 32 Approximation Algorithms.
Lecture - 33 Approximation Algorithms.
Lecture - 34 Approximation Algorithms for NP.


Taught by

nptelhrd

Tags

Related Courses

Divide and Conquer, Sorting and Searching, and Randomized Algorithms
Stanford University via Coursera
Calculus: Single Variable Part 2 - Differentiation
University of Pennsylvania via Coursera
Design and Analysis of Algorithms
NPTEL via YouTube
Data Structures and Algorithms Course in Hindi
CodeWithHarry via YouTube
Fundamental Algorithms: Design And Analysis
Indian Institute of Technology, Kharagpur via Swayam