About this Specialization

122,769 recent views
Computer science legend Donald Knuth once said “I don’t understand things unless I try to program them.” We also believe that the best way to learn an algorithm is to program it. However, many excellent books and online courses on algorithms, that excel in introducing algorithmic ideas, have not yet succeeded in teaching you how to implement algorithms, the crucial computer science skill that you have to master at your next job interview. We tried to fill this gap by forming a diverse team of instructors that includes world-leading experts in theoretical and applied algorithms at UCSD (Daniel Kane, Alexander Kulikov, and Pavel Pevzner), a chief data scientist at Yandex (Michael Levin), and a former software engineer at Google (Neil Rhodes). This unique combination of skills makes this Specialization different from other excellent MOOCs on algorithms that are all developed by theoretical computer scientists. While these MOOCs focus on theory, our Specialization is a mix of algorithmic theory/practice/applications with software engineering. You will learn algorithms by implementing nearly 100 coding problems in a programming language of your choice. To the best of knowledge, no other online course in Algorithms comes close to offering you a wealth of programming challenges (and puzzles!) that you may face at your next job interview. We invested over 3000 hours into designing our challenges as an alternative to multiple choice questions that you usually find in MOOCs.
Shareable Certificate
Earn a Certificate upon completion
100% online courses
Start instantly and learn at your own schedule.
Flexible Schedule
Set and maintain flexible deadlines.
Intermediate Level
Approximately 8 months to complete
Suggested pace of 6 hours/week
English
Shareable Certificate
Earn a Certificate upon completion
100% online courses
Start instantly and learn at your own schedule.
Flexible Schedule
Set and maintain flexible deadlines.
Intermediate Level
Approximately 8 months to complete
Suggested pace of 6 hours/week
English

How the Specialization Works

Take Courses

A Coursera Specialization is a series of courses that helps you master a skill. To begin, enroll in the Specialization directly, or review its courses and choose the one you'd like to start with. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. It’s okay to complete just one course — you can pause your learning or end your subscription at any time. Visit your learner dashboard to track your course enrollments and your progress.

Hands-on Project

Every Specialization includes a hands-on project. You'll need to successfully finish the project(s) to complete the Specialization and earn your certificate. If the Specialization includes a separate course for the hands-on project, you'll need to finish each of the other courses before you can start it.

Earn a Certificate

When you finish every course and complete the hands-on project, you'll earn a Certificate that you can share with prospective employers and your professional network.

There are 6 Courses in this Specialization

Course1

Course 1

Algorithmic Toolbox

4.6
stars
11,246 ratings
2,382 reviews
Course2

Course 2

Data Structures

4.6
stars
4,541 ratings
778 reviews
Course3

Course 3

Algorithms on Graphs

4.7
stars
2,066 ratings
343 reviews
Course4

Course 4

Algorithms on Strings

4.5
stars
979 ratings
172 reviews

Offered by

Placeholder

University of California San Diego

Placeholder

HSE University

Placeholder
Placeholder
Placeholder

Frequently Asked Questions

More questions? Visit the Learner Help Center.