数据结构与算法 Specialization

About This Specialization

The Specialization covers algorithmic techniques for solving problems arising in computer science applications. It is a mix of theory and practice: you will not only design algorithms and estimate their complexity, but you will get a deeper understanding of algorithms by implementing them in the programming language of your choice (C, C++, C#, Haskell, Java, JavaScript, Python2, Python3, Ruby, and Scala).
This Specialization is unique, because it offers two real-world projects. Advanced Shortest Paths project is offered in the end of the Algorithms on Graphs course. In this project, you'll deal with road network analysis and social network analysis. You'll learn how to compute the fastest route between New York and Mountain View thousands of times faster than classic algorithms and close to those used in Google Maps. Through Genome Assembly culminating project at the end of the Specialization, you'll learn how to assemble genomes from millions of short pieces and how algorithms fuel recent developments in personalized medicine.

Created by:

Industry Partners:

6 courses

Follow the suggested order or choose your own.

Projects

Designed to help you practice and apply the skills you learn.

Certificates

Highlight your new skills on your resume or LinkedIn.

Courses

Intermediate Specialization.

Some related experience required.

COURSE 1

Algorithmic Toolbox

Current session: May 21

Commitment

5 weeks of study, 4-8 hours/week

Subtitles

English, Spanish

About the Course

The course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, dynamic programming. We will learn a lot of theory

COURSE 2

Data Structures

Current session: May 21

Commitment

4周的学习时间，每周需花费3-5小时

Subtitles

English

About the Course

A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently. In this course, we consider the common data structures that are used in various computational problems. You wi

COURSE 3

Algorithms on Graphs

Current session: May 21

Commitment

5 weeks of study, 3-4 hours/week

Subtitles

English

About the Course

If you have ever used a navigation service to find optimal route and estimate time to destination, you've used algorithms on graphs. Graphs arise in various real-world situations as there are road networks, computer networks and, most recently

COURSE 4

Algorithms on Strings

Current session: May 21

Commitment

4 weeks of study, 4-8 hours/week

Subtitles

English

About the Course

World and internet is full of textual information. We search for information using textual queries, we read websites, books, e-mails. All those are strings from the point of view of computer science. To make sense of all that information and mak

COURSE 5

Advanced Algorithms and Complexity

Current session: May 21

Commitment

4 weeks of study, 4-8 hours/week

Subtitles

English

About the Course

You've learned the basic algorithms now and are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We will start with networks flows which are used in more

COURSE 6

Genome Assembly Programming Challenge

Upcoming session: May 28

Subtitles

English

About the Course

In Spring 2011, thousands of people in Germany were hospitalized with a deadly disease that started as food poisoning with bloody diarrhea and often led to kidney failure. It was the beginning of the deadliest outbreak in recent history, caused by a my

Creators

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Faculty at the Computer Science and Engineering Department at UCSD are among the leaders in the field of algorithms, bioinformatics, cryptography, machine learning, and many other areas of computer science.

UC San Diego is an academic powerhouse and economic engine, recognized as one of the top 10 public universities by U.S. News and World Report. Innovation is central to who we are and what we do. Here, students learn that knowledge isn't just acquired in the classroom—life is their laboratory.

Faculty of Computer Science (http://cs.hse.ru/en/) trains developers and researchers. The programme has been created based on the experience of leading American and European universities, such as Stanford University (U.S.) and EPFL (Switzerland). Also taken into consideration when creating the faculty was the School of Data Analysis, which is one of the strongest postgraduate schools in the field of computer science in Russia. In the faculty, learning is based on practice and projects.

National Research University - Higher School of Economics (HSE) is one of the top research universities in Russia. Established in 1992 to promote new research and teaching in economics and related disciplines, it now offers programs at all levels of university education across an extraordinary range of fields of study including business, sociology, cultural studies, philosophy, political science, international relations, law, Asian studies, media and communications, IT, mathematics, engineering, and more.
Learn more on www.hse.ru