# Introduction to The Design and Analysis of Algorithms Online Course

December 5, 2016
###### Online Marketing Course
December 6, 2016

Learn the design and analysis of computer algorithms  from one of the best universities in computer science. Build your skills in computer algorithms and data structures by enrolling for the Stanford University online course in  introduction to the design and analysis of algorithms. Learn the scientific principles surrounding algorithms and data structures, and apply your new skills to any field of computer science.

If you have ever wanted to learn the principles surrounding algorithm design, then this design and analysis of computer algorithms course is for you.

## About The Algorithms: Design and Analysis Course

In this introduction to the design and analysis of algorithms  course you will learn several fundamental principles of algorithm design. You’ll learn the divide-and-conquer design paradigm, with applications to fast sorting, searching, and multiplication. You’ll learn several blazingly fast primitives for computing on graphs, such as how to compute connectivity information and shortest paths. Finally, we’ll study how allowing the computer to “flip coins” can lead to elegant and practical algorithms and data structures.

In the computer algorithms introduction to design and analysis course, you will learn the answers to questions such as : How do data structures like heaps, hash tables, bloom filters, and balanced search trees actually work, anyway? How come QuickSort runs so fast? What can graph algorithms tell us about the structure of the Web and social networks? Did my 3rd-grade teacher explain only a suboptimal algorithm for multiplying two numbers?

##### Course Syllabus
• Week 1: Introduction. Asymptotic analysis including big-oh notation. Divide-and-conquer algorithms for sorting, counting inversions, matrix multiplication, and closest pair.
• Week 2: Running time analysis of divide-and-conquer algorithms. The master method. Introduction to randomized algorithms, with a probability review. QuickSort.
• Week 3: More on randomized algorithms and probability. Computing the median in linear time. A randomized algorithm for the minimum graph cut problem.
• Week 4: Graph primitives. Depth- and breadth-first search. Connected components in undirected graphs. Topological sort in directed acyclic graphs. Strongly connected components in directed graphs.
• Week 5: Dijkstra’s shortest-path algorithm. Introduction to data structures. Heaps and applications.
• Week 6: Further data structures. Hash tables and applications. Balanced binary search trees.

## Ouch! You are Locked Out

### Recommended for you:

Related Online Courses:  Computer Organization and Architecture Online Course