Educational Services for Outreach at Scale (ESOS)

July 15th, 2020 to December 14th, 2020

Course Content Teaching Faculty Duration and Venue
Who Should Attend Course Fee and Certification How to Apply
Note Address For Communication

click here to download the brochure

click here to download the Schedule

Help-line Contacts

Instructions for Enrolling in the Course

Click here for registration form List of participants

Help us spread -    

Programme Overview

In case you have received a "Transaction Failure" message, then please wait for 2 or 3 working days. If your name still doesn't appear on the Confirmed Participants list then only send an email to

Learn how to structure and use algorithms to solve real life problems. Algorithms power the biggest web companies and the most promising startups. Interviews at tech companies start with questions that probe for good algorithm thinking.

In this computer science course, you will learn how to think about algorithms and create them using sorting techniques such as quick sort and merge sort, and searching algorithms, median finding, and order statistics.

The course progresses with Numerical, String, and Geometric algorithms like Polynomial Multiplication, Matrix Operations, GCD, Pattern Matching, Subsequences, Sweep, and Convex Hull. It concludes with graph algorithms like shortest path and spanning tree.

Course content

The topics covered in this course:

  • Sorting and Searching

  • Numerical Algorithms

  • String Algorithms

  • Geometric Algorithms

  • Graph Algorithms

The detailed description is given below:

Topic 1: Complexity

  • Learn to analyse algorithm based on its running time

  • Empirical Analyses of Running Time

  • Differentiating between Average and Worst Case Analysis

  • Learn about Asymptotic Analysis

  • Understanding the concept of Big-Oh

Topic 2: Sorting

  • Learn about Comparison based Sorting

  • Learn about Selection, Insertion and Heap Sort of Abstract Data types for Sorting

  • Learn about Min-Heap Based Sort and its Array Representation

  • Know about Divide and Conquer Approach to Sorting and Merge-Sort Execution Tree

  • Learn about Quick-Sort Execution Tree and Worst case Running time of Quick-Sort

Topic 3: Searching (Graph Based)

  • Introduction to Graph Traversal Algorithm – (BFS) – Its properties, analysis, and application.

  • Introduction to Graph Traversal Algorithm – (DFS) - Its properties, analysis, and application.

  • Know about Shortest Path in Weighted Graphs and Dijkstra’s Algorithm

  • Know about Shortest Path Algorithms – Bellman-Ford Algorithm

  • Introduction to All Pair Shortest Path Algorithm – Floyd-Warshal Algorithm and its examples

Topic 4: Spanning Trees and Numeric Algorithms

  • Using Prim’s Algorithm for finding a spanning tree for a graph

  • Introduction to Kruskal’s Algorithm and its analysis

  • Analysis of Prim’s Algorithm and Kruskal’s Algorithm

  • Learn about Bisection Method and its Advantages and Disadvantages

  • Introduction and Principles of Newton-Raphson Method

Topic 5: String Algorithms

  • Introduction to String Matching Algorithm

  • Learn about Naive String Matching Algorithm and its Analysis

  • Introduction to Rabin-Karp Algorithm and its Analysis

  • Introduction to Finite Automaton Algorithm

  • Introduction to Knuth-Morris-Pratt Algorithm and its Analysis

Topic 6: Geometric Algorithms

  • Learn about different Computational Geometry Algorithms

  • Learn about properties of Line Segment

  • Introduction to Convex Hull and its illustrations

Teaching Faculty

Prof (Retired) Deepak B. Phatak, Dept. of CSE, IIT Bombay

Prof Ajit Diwan, Dept. of CSE, IIT Bombay

Prof Ganesh Ramakrishnan, Dept. of CSE, IIT Bombay

Nagesh Karmali, Sr. Manager (Research), Dept. of CSE, IIT Bombay

Duration and Venue

Registration Opens

July 1, 2020

Registration Ends

October 16, 2020

Course Starts

July 15, 2020

Course Ends

November 15, 2020

Total Duration

6 weeks

This course will be conducted in a self-paced mode, i.e. all the lecture videos, slides, reading materials, activities, and graded assignments will be released on when the course starts. This gives you the flexibility of progressing and completing the graded assignments at your own pace. However, but one would need to complete them before the course ends.

Who Should Attend

Concepts of data structures as covered in ‘Foundations of Data Structures’ and ‘Implementation of Data Structures’ courses are prerequisites of this course.

Course Fee and Certification

The registration fee for the course is Rs. 475/-. However, register before 16 August 2020 for Rs. 375/- only to avail an early bird registration discount. Please note that the registration fee once paid is neither refundable nor adjustable under any circumstances.

Important payment instructions:
In case of a course fee transaction failure, the participant will get an auto generated mail with instructions for further process. Please go through the mail carefully. If the amount is already debited to your account, please do not make another payment. In case of a double payment (or more than once), please send a mail to requesting for a refund. The participant will also have to check the following link for his/her vendor creation in order to get a refund. IIT Bombay will not be able to process the refund (for any reason) if the vendor creation, as per IIT Bombay's requirement, is not completed by the participant. Link:-

Honor Code Certificates will be issued on successful completion of the course based on the grading policy mentioned in the course. Please note that all certificates will be issued online. No hard copies will be given.

How to Apply

Enrollment will be strictly online, and no other mode of application will be entertained. The online registration for the course will start on 1 July 2020. It will remain open till 16 October 2020.

Registration process for the Program:

  • Sign up using your valid email id on the website:
  • After verification, your account will be created
  • Login on the website with the verified account
  • Go to Announcements, select the program and register
  • After successful registration, you will receive an automated email. Your name will be listed in the “List of Participants page”
  • Thereafter register on IITBombayX site ( using the same email id to access the course content


The course content is released under Open Source License. All participants must agree that the content contributed by them in any form, (assignments, questions, etc.) would be released under Open Source Licence, by accepting the terms mentioned under ‘No Objection Certificate’. All contributors will be acknowledged.

Address For Communication

Dr. Kalpana Kannan
Project Coordinator, ESOS Project
Department of CSE, Kanwal Rekhi Building,
Indian Institute of Technology Bombay,
Mumbai - 400 076.
Tel.: +91 9833594905 (Mahendra)
Website -