Algorithms: Design and Analysis, Part 2

Tim Roughgarden, Stanford


About This Course

Welcome to the self paced course, Algorithms: Design and Analysis, Part 2! Algorithms are the heart of computer science, and the subject has countless practical applications as well as intellectual depth. This course is an introduction to algorithms for learners with at least a little programming experience. The course is rigorous but emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details. After completing this course, you will have a greater mastery of algorithms than almost anyone without a graduate degree in the subject.

Specific topics in Part 2 include: greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes), dynamic programming (knapsack, sequence alignment, optimal search trees, shortest paths), NP-completeness and what it means for the algorithm designer, analysis of heuristics, local search.

Learners will practice and master the fundamentals of algorithms through several types of assessments. There are 6 multiple-choice problem sets to test your understanding of the most important concepts. There are also 6 programming assignments, where you implement one of the algorithms covered in lecture in a programming language of your choosing. The course concludes with a multiple-choice final.

There are no assignment due dates and you can work through the course materials and assignments at your own pace.

Who This Course is For:

This course is aimed at learners with at least a little bit of programming experience who want to learn the essentials of algorithms. In a University computer science curriculum, this course is typically taken in the third year.

Course Staff

Tim Roughgarden

Tim Roughgarden has been a professor in the Computer Science Department at Stanford University since 2004. He has taught and published extensively on the subject of algorithms and their applications.

Frequently Asked Questions

Can I earn a Statement of Accomplishment

Yes. If you successfully complete at least 70% of the graded assignments in the course, you can receive a Statement of Accomplishment.

Share with friends and family! Tweet that you've registered for this course Email someone to say you've registered for this course
  1. Course Number

  2. Classes Start

    Sep 05, 2017
  3. Estimated Effort

    4 hrs / wk
  4. Price


Our Research Community

Stanford University pursues the science of learning. Online learners are important participants in that pursuit. The information we gather from your engagement with our instructional offerings makes it possible for faculty, researchers, designers and engineers to continuously improve their work and, in that process, build learning science.

By registering as an online learner, you are also participating in research...

Read Terms of Service and Privacy Policy.

  • 5 сентября 2017
Характеристики онлайн курса:
  • Бесплатный:
  • Платный:
  • Сертификат:
  • MOOC:
  • Видеолекции:
  • Аудиолекции:
  • Email-курс:
  • Язык: Английский Gb


Пока никто не написал отзыв по этому курсу. Хотите быть первым?

Зарегистрируйтесь, чтобы оставить отзыв

Ещё курсы на эту тему:
Small-icon.hover Algorithms: Design and Analysis, Part 1
In this course you will learn several fundamental principles of algorithm design...
Small-icon.hover Algorithms: Design and Analysis, Part 2
In this course you will learn several fundamental principles of advanced algorithm...
1-124jf00 Foundations of Software Engineering
This is a foundation subject in modern software development techniques for engineering...
393986_dded_11 Learn Data Structures & Algorithms : Earn $60k Per Year
Learn Data Structures and Algorithms in C++ =================> ( 9blast...
Caveman Genomic Data Science and Clustering (Bioinformatics V)
How do we infer which genes orchestrate various processes in the cell? How did...
Ещё из рубрики «Технические науки»:
Regular_906f023f-dbe3-40ee-a8f5-2feb04c56828 Cancer in the 21st Century: the Genomic Revolution
Discover how genetics is revolutionising the detection and treatment of cancer...
Regular_2c51f90d-2504-47bb-8816-c834b4e29b99 The Science of Nuclear Energy
Discover the science behind nuclear energy and its role in energy provision...
Regular_e63f6908-c6bc-4bc2-9059-d18064cac286 Bioprinting: 3D Printing Body Parts
Discover how biomaterials and 3D printing collide, to create revolutionary,...
Regular_72afd2ed-16a7-4a72-b864-41f09226ed3b Biochemistry: the Molecules of Life
Explore the impact of biochemistry on bioenergy and health, discovering why...
Regular_4b0b0579-ad25-4009-b3d4-b99d91da5870 Functional Programming in Haskell: Supercharge Your Coding
Get an introduction to Haskell, the increasingly popular functional programming...
Ещё от Stanford:
Asset-v1:psychiatry+stayingfit+selfpaced+type@asset+block@screen_shot_2017-08-31_at_5.04.54_pm Staying Fit
Overview About This Course This course is designed for anyone over the age...
Asset-v1:engineering+qmse01+fall2017+type@asset+block@qmse Quantum Mechanics for Scientists and Engineers
Overview About This Course This 9 week course aims to teach quantum mechanics...
Asset-v1:education+xeduc201+fall2017+type@asset+block@ulgse-vertical Constructive Classroom Conversations: Improving Student-to-Student Interactions
Overview About This Course New College- and Career-Ready standards emphasize...
Asset-v1:education+xeduc203+fall2017+type@asset+block@ulgse-vertical Integrating Language Development and Content Learning in Math: Focus on Reasoning
Overview About This Course New learning standards for math emphasize the importance...
Nlp-logo CS224d: Deep Learning for Natural Language Processing
Natural language processing (NLP) is one of the most important technologies...

© 2013-2017