Algorithms

Learn how to structure and use algorithms to solve real life problems.

Algorithms

Course Description

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. This course is part of the Fundamentals of Computer Science XSeries Program: Programming Basics Object-Oriented Programming Foundations of Data Structures Implementation of Data St... Read More »

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.

This course is part of the Fundamentals of Computer Science XSeries Program:

  • Programming Basics
  • Object-Oriented Programming
  • Foundations of Data Structures
  • Implementation of Data Structures
Read Less
Course Outcomes:
  • Structure of important algorithms.
  • How to use algorithms with appropriate data structures, to solve real life problems.
  • How algorithms and data structures can be used to design system at scale.
Course Details:

Prerequisites

Concepts of data structures as covered in ‘Foundations of Data Structures’ and ‘Implementation of Data Structures’ courses.
About Instructor:

Deepak B. Phatak - Professor, Department of Computer Science and Engineering

Dr. Deepak B Phatak has been working with IIT Bombay since 1971. His main concern is improvement in quality of education, at a large scale commensurate with the Indian national aspirations. Towards this end, he has dovetailed the synchronous distance education, which he started at IIT Bombay 15 years ago, into an innovative program for training 10,000 teachers at a time. He believes in developing affordable technological solutions. He heads the national initiative on Aakash tablets. He has been an advisor and IT consultant to organizations and companies, and has worked on many company boards. He has won several distinctions and awards, and has been conferred ‘Padma Shri’ by Government of India.


Nagesh Karmali - Sr. Manager (Research)

Nagesh Karmali is a Sr. Manager (Research) in the Dept. of CSE at IIT Bombay and heads the Fundamental Research Group. He is associated with IIT Bombay since 2005. His broad research areas are in the field of Parallel Databases, Big Data Analytics, Adaptive Recommendation Systems, Peer Evaluation Systems, etc. His interests also lies in Category Theory, Control Theory, System Dynamics, Music Theory, etc. He has mentored over 70 B Tech, DD, and M Tech theses since 2008. He maintains a wiki for his research projects, which can be accessed at www.it.iitb.ac.in/frg/wiki. He also likes to travel across villages and learn from the local people.


Ajit Diwan - Professor of Computer Science and Engineering

Prof Ajit A Diwan received his BTech from IIT Bombay, and PhD from TIFR Bombay. He is a Professor of Computer Science and Engineering at IIT Bombay since 1988. His broad research interests are Graph theory, Combinatorics, and Algorithms. He teaches courses like Design and Analysis of Algorithms, Algorithms and Complexity, Discrete Structures, Operations Research, etc.. He has made substantial research contributions in his favorite area of graph theory. He is well known for his unique teaching style which involves discussing a problem, followed by brainstorming sessions and discussion among peers in the class.


Ganesh Ramakrishnan - Associate Professor

Prof. Ganesh Ramakrishnan is an Associate Professor at IIT Bombay. His research interests are Statistical Relational Learning, Information Extraction, Information Mining from Unstructured Resources, Information and Communication Technology for Rural Development, Machine Learning, and Optimization. He has worked extensively in the area of feature induction and relational learning in machine learning, including algorithms and data structures for scaling them up. Apart from these, Ganesh has made significant contributions to Sandhan, an Indian Language search engine; Programmable Machine Translation; Search over entities and relationships; BET, a tool for Inductive Logic Programming that integrates several existing algorithms and induction frameworks (BET stands for Background + Example = Theory).


DON'T HAVE TIME?

We can send you everything you need to know about this course through email.
We respect your privacy. Your information is safe and will never be shared.