À propos de ce cours

418,457 consultations récentes

Learner Career Outcomes

35%

ont commencé une nouvelle carrière après avoir terminé ce cours

36%

ont bénéficié d'un avantage concret dans leur carrières grâce à ce cours

15%

a obtenu une augmentation de salaire ou une promotion

100 % en ligne

Commencez dès maintenant et apprenez aux horaires qui vous conviennent.

Dates limites flexibles

Réinitialisez les dates limites selon votre disponibilité.

Niveau intermédiaire

Approx. 33 heures pour terminer

Recommandé : 5 weeks of study, 4-8 hours/week...

Anglais

Sous-titres : Anglais, Espagnol

Ce que vous allez apprendre

  • Check

    Essential algorithmic techniques

  • Check

    Design efficient algorithms

  • Check

    Practice solving algorithmic interview problems

  • Check

    Implement efficient and reliable solutions

Compétences que vous acquerrez

Dynamic ProgrammingDebuggingSoftware TestingAlgorithmsComputer Programming

Learner Career Outcomes

35%

ont commencé une nouvelle carrière après avoir terminé ce cours

36%

ont bénéficié d'un avantage concret dans leur carrières grâce à ce cours

15%

a obtenu une augmentation de salaire ou une promotion

100 % en ligne

Commencez dès maintenant et apprenez aux horaires qui vous conviennent.

Dates limites flexibles

Réinitialisez les dates limites selon votre disponibilité.

Niveau intermédiaire

Approx. 33 heures pour terminer

Recommandé : 5 weeks of study, 4-8 hours/week...

Anglais

Sous-titres : Anglais, Espagnol

Enseignants

Évaluation de l'enseignant4.33/5 (228 notes)Info
Image de l'enseignant, Alexander S. Kulikov

Alexander S. Kulikov 

Visiting Professor
Department of Computer Science and Engineering
291,509 étudiants
13 cours
Image de l'enseignant, Michael Levin

Michael Levin 

Lecturer
Computer Science
271,699 étudiants
8 cours
Image de l'enseignant, Neil Rhodes

Neil Rhodes 

Adjunct Faculty
Computer Science and Engineering
247,324 étudiants
6 cours
Image de l'enseignant, Pavel  Pevzner

Pavel Pevzner 

Professor
Department of Computer Science and Engineering
287,206 étudiants
11 cours
Image de l'enseignant, Daniel M Kane

Daniel M Kane 

Assistant Professor
Department of Computer Science and Engineering / Department of Mathematics
240,627 étudiants
4 cours

Offert par

Logo Université de Californie à San Diego

Université de Californie à San Diego

Logo Université nationale de recherche, École des hautes études en sciences économiques

Université nationale de recherche, École des hautes études en sciences économiques

Programme du cours : ce que vous apprendrez dans ce cours

Évaluation du contenuThumbs Up92%(81,080 notes)Info
Semaine
1

Semaine 1

5 heures pour terminer

Programming Challenges

5 heures pour terminer
6 vidéos (Total 48 min), 6 lectures, 3 quiz
6 vidéos
Solving the Sum of Two Digits Programming Challenge (screencast)6 min
Solving the Maximum Pairwise Product Programming Challenge: Improving the Naive Solution, Testing, Debugging13 min
Stress Test - Implementation8 min
Stress Test - Find the Test and Debug7 min
Stress Test - More Testing, Submit and Pass!8 min
6 lectures
Companion MOOCBook10 min
What background knowledge is necessary?10 min
Optional Videos and Screencasts10 min
Maximum Pairwise Product Programming Challenge10 min
Using PyCharm to solve programming challenges10 min
Acknowledgements2 min
1 exercice pour s'entraîner
Solving Programming Challenges20 min
Semaine
2

Semaine 2

5 heures pour terminer

Algorithmic Warm-up

5 heures pour terminer
12 vidéos (Total 77 min), 3 lectures, 4 quiz
12 vidéos
Coming Up3 min
Problem Overview3 min
Naive Algorithm5 min
Efficient Algorithm3 min
Problem Overview and Naive Algorithm4 min
Efficient Algorithm5 min
Computing Runtimes10 min
Asymptotic Notation6 min
Big-O Notation6 min
Using Big-O10 min
Course Overview10 min
3 lectures
Resources2 min
Resources2 min
Resources2 min
3 exercices pour s'entraîner
Logarithms10 min
Big-O10 min
Growth rate10 min
Semaine
3

Semaine 3

7 heures pour terminer

Greedy Algorithms

7 heures pour terminer
10 vidéos (Total 56 min), 1 lecture, 8 quiz
10 vidéos
Car Fueling7 min
Car Fueling - Implementation and Analysis9 min
Main Ingredients of Greedy Algorithms2 min
Celebration Party Problem6 min
Efficient Algorithm for Grouping Children5 min
Analysis and Implementation of the Efficient Algorithm5 min
Long Hike6 min
Fractional Knapsack - Implementation, Analysis and Optimization6 min
Review of Greedy Algorithms2 min
1 lecture
Resources2 min
2 exercices pour s'entraîner
Greedy Algorithms10 min
Fractional Knapsack10 min
Semaine
4

Semaine 4

8 heures pour terminer

Divide-and-Conquer

8 heures pour terminer
20 vidéos (Total 157 min), 5 lectures, 9 quiz
20 vidéos
Intro3 min
Linear Search7 min
Binary Search7 min
Binary Search Runtime8 min
Problem Overview and Naïve Solution6 min
Naïve Divide and Conquer Algorithm7 min
Faster Divide and Conquer Algorithm6 min
What is the Master Theorem?4 min
Proof of the Master Theorem9 min
Problem Overview2 min
Selection Sort8 min
Merge Sort10 min
Lower Bound for Comparison Based Sorting12 min
Non-Comparison Based Sorting Algorithms7 min
Overview2 min
Algorithm9 min
Random Pivot13 min
Running Time Analysis (optional)15 min
Equal Elements6 min
Final Remarks8 min
5 lectures
Resources10 min
Resources5 min
Resources10 min
Resources5 min
Resources10 min
5 exercices pour s'entraîner
Linear Search and Binary Search10 min
Polynomial Multiplication15 min
Master Theorem10 min
Sorting15 min
Quick Sort15 min
4.7
1,220 avisChevron Right

Meilleurs avis pour Algorithmic Toolbox

par SGJan 20th 2017

I liked the fact that the algorithms are not just the introductory searching and sorting algorithms. The assignments are fairly difficult (I have decent scripting experience), but not impossibly so.

par MBMar 6th 2018

Cool course. Thank you! One suggestion about your book (Learning Algorithms Through Programming and Puzzle Solving): could you add some theory which would serve as a brief reminder before problems?

À propos du Spécialisation Structures de données et algorithmes

This specialization is a mix of theory and practice: you will learn algorithmic techniques for solving various computational problems and will implement about 100 algorithmic coding problems in a programming language of your choice. No other online course in Algorithms even comes close to offering you a wealth of programming challenges that you may face at your next job interview. To prepare you, we invested over 3000 hours into designing our challenges as an alternative to multiple choice questions that you usually find in MOOCs. Sorry, we do not believe in multiple choice questions when it comes to learning algorithms...or anything else in computer science! For each algorithm you develop and implement, we designed multiple tests to check its correctness and running time — you will have to debug your programs without even knowing what these tests are! It may sound difficult, but we believe it is the only way to truly understand how the algorithms work and to master the art of programming. The specialization contains two real-world projects: Big Networks and Genome Assembly. You will analyze both road networks and social networks and will learn how to compute the shortest route between New York and San Francisco (1000 times faster than the standard shortest path algorithms!) Afterwards, you will learn how to assemble genomes from millions of short fragments of DNA and how assembly algorithms fuel recent developments in personalized medicine....
Structures de données et algorithmes

Foire Aux Questions

  • Une fois que vous êtes inscrit(e) pour un Certificat, vous pouvez accéder à toutes les vidéos de cours, et à tous les quiz et exercices de programmation (le cas échéant). Vous pouvez soumettre des devoirs à examiner par vos pairs et en examiner vous-même uniquement après le début de votre session. Si vous préférez explorer le cours sans l'acheter, vous ne serez peut-être pas en mesure d'accéder à certains devoirs.

  • Lorsque vous vous inscrivez au cours, vous bénéficiez d'un accès à tous les cours de la Spécialisation, et vous obtenez un Certificat lorsque vous avez réussi. Votre Certificat électronique est alors ajouté à votre page Accomplissements. À partir de cette page, vous pouvez imprimer votre Certificat ou l'ajouter à votre profil LinkedIn. Si vous souhaitez seulement lire et visualiser le contenu du cours, vous pouvez accéder gratuitement au cours en tant qu'auditeur libre.

D'autres questions ? Visitez le Centre d'Aide pour les Etudiants.