This provides a collection of open lectures on algorithms for academic courses from colleges/universities, which teach fundamental techniques for the design and analysis of efficient algorithms. An algorithm is a procedure or formula for solving a problem. We use algorithms for solving math problems, data processing, and automated reasoning. Algorithms are the ideas behind computer programs. The more efficient algorithms we design, the more efficiently and effectively we can use computational resources.
Taught by Professor Srinivas Devadas, this course provides an introduction to mathematical modeling of computational problems, and covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems.
Taught by Professor Charles Leiserson and Professor Erik Demaine, this course teaches techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice.
Instructors: Prof. Erik Demaine, Prof. Srinivas Devadas, and Prof. Nancy Lynch. This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application.
This is an undergraduate course that introduces fundamental techniques and viewpoints for the design and the analysis of efficient computer algorithms, and studies important specific algorithms.
Taught by Prof. Christos Papadimitriou and Prof. Satish Rao, this course discusses concept and basic techniques in the design and analysis of algorithms; models of computation; etc.
Taught by Professor Shai Simonson, this course studies the design of algorithms according to methodology and application; analysis of algorithms; and NP-Completeness theory.
Instructor: Prof. Sourav Mukhopadhyay, IIT Kharagpur. This course provides an introduction to mathematical modeling of computational problems.
This course discusses the principles of algorithm design, divide and conquer, dynamic programming, greedy algorithms, and NP-completeness.
In computer science, graph theory is used extensively. The aim of this course is to introduce the subject of graph theory to computer science students in a thorough way.
Instructor: Professor Erik Demaine. This course focuses on the algorithms for analyzing and designing geometric foldings.
Instructor: Professor Dan Gusfield. This course covers fundamental algorithms for efficient analysis of biological sequences and for building evolutionary trees.
Instructor: Professor Jelani Nelson. This course will cover topics: the word RAM model, data structures, amortization, online algorithms, linear programming, semidefinite programming, approximation algorithms, hashing, randomized algorithms, and fast exponential time algorithms.
Instructor: Professor Jelani Nelson. Big data is data so large that it does not fit in the main memory of a single machine, and the need to process big data by efficient algorithms arises in Internet search, network traffic monitoring, machine learning, scientific computing, signal processing, and several other areas.
In this course, you will learn how to design and analyse algorithms in the streaming and property testing models of computation.
No comments:
Post a Comment