Mes cours gratuits préférés pour apprendre les structures de données et les algorithmes en profondeur

par javinpaul

Les structures de données et les algorithmes font partie des sujets les plus essentiels pour les programmeurs, à la fois pour obtenir un emploi et pour bien faire sur un emploi. Une bonne connaissance des structures de données et des algorithmes est la base de l’écriture d’un bon code.

Si vous êtes familier avec les structures de données essentielles par exemple tableau, chaîne, liste chaînée, arbre, carte, et les structures de données avancées comme les essais, et les arbres auto-équilibrés comme les arbres AVL, etc, vous saurez quand utiliser quelle structure de données et calculer le coût de votre code en termes de CPU et de mémoire.

Même si vous n’avez pas besoin d’écrire votre propre tableau, liste chaînée ou table de hachage, étant donné que tous les principaux SDK de programmation les fournissent, par ex. JDK ou la bibliothèque STL de C++, vous devrez les comprendre afin de pouvoir les utiliser au bon endroit.

L’utilisation de la bonne structure de données peut améliorer considérablement les performances d’un algorithme.

Idéalement, nous devrions tous apprendre les structures de données et les algorithmes dans nos écoles et collèges, mais c’est rarement couvert. La plupart des programmeurs, y compris moi-même, ne sont initiés à une structure de données que dans nos cours d’informatique, mais nous n’avons pas vraiment appris leur importance dans le monde réel, et c’est pourquoi nous ne les avons pas mieux compris.

Pour nous, ce ne sont que les algorithmes et les structures de données par exemple un certain concept, pas un outil que vous pouvez utiliser pour écrire de bons programmes. Nous ne savions pas que Facebook les utiliserait pour stocker nos coordonnées ou que Google les utiliserait pour stocker des pages web et faire le lien avec les requêtes de recherche.

De toute façon, il n’est jamais trop tard.

Si vous pensez que votre connaissance des structures de données n’est pas à la hauteur ou que vous voulez améliorer votre connaissance des structures de données, alors vous êtes au bon endroit.

Auparavant, j’ai partagé quelques livres gratuits pour apprendre les structures de données et les algorithmes, et dans cet article, vous apprendrez certains des meilleurs cours sur les structures de données et les algorithmes qui sont disponibles gratuitement en ligne.

Cours gratuits pour apprendre les structures de données et les algorithmes

Voici ma liste de certains des meilleurs cours pour apprendre les structures de données et les algorithmes, qui sont également gratuits. Beaucoup de programmeurs pensent que les ressources gratuites ne sont pas bonnes, ce qui n’est pas vrai.

Même si elles n’égalent parfois pas la qualité et la couverture des ressources payantes, elles sont, en fait, les meilleures ressources pour commencer.

Vous pouvez utiliser ces cours pour vous familiariser avec les structures de données essentielles et apprendre quelques bases.

Certains d’entre eux sont particulièrement bons du point de vue de l’entretien, de sorte que vous pouvez les utiliser parallèlement à tout livre que vous utilisez pour préparer votre entretien d’embauche en programmation.

Cours n°1 : Concepts de structure de données en C

C’est un autre cours de formation en ligne gratuit sur les algorithmes et les structures de données, qui vise à enseigner les structures de données de base en programmation informatique.

Les structures de données enseignées dans le cours comprennent la pile, la file d’attente et la liste chaînée en utilisant le langage de programmation C.

Le but principal de ce cours est de faire en sorte que les étudiants et les ingénieurs logiciels visualisent le fonctionnement de différentes structures de données.

Concepts de structures de données en C

Ce n’est pas un cours exhaustif, mais vous apprendrez à connaître la pile, la file d’attente et la liste chaînée.

En bref, c’est un excellent cours pour les programmeurs qui découvrent les structures de données et ceux qui viennent d’apprendre un langage de programmation et veulent apprendre les bases du fonctionnement des structures de données.

Cours #2 : Algorithmes Partie 1 – Coursera

C’est la première partie d’une série de deux cours couvrant les algorithmes et les structures de données sur Courera par Robert Sedgewick.

Dans cette partie, vous apprendrez les structures de données essentielles comme les listes chaînées, les piles, les files d’attente, les arbres binaires et les tables de hachage, et les algorithmes de recherche et de tri comme la recherche binaire, le quicksort, le mergesort, le tri par insertion, etc.

Algorithmes Partie 1

Vous apprendrez également les structures de données de base et les algorithmes utilisés dans les applications quotidiennes et comprendrez les compromis impliqués dans le choix de chaque structure de données ainsi que les algorithmes de traversée, de récupération et de mise à jour.

Toutes les fonctionnalités de ce cours sont disponibles gratuitement mais il n’offre pas de certificat à l’issue du cours.

Cours #3 : Algorithmes – Partie 2

C’est la deuxième partie d’une série de deux cours Coursera gratuits en ligne couvrant les structures de données et les algorithmes par Robert Sedgewick et Kevin Wayne, tous deux professeurs d’informatique.

Robert Sedgewick est également l’auteur du livre Algorithmes 4ème édition, l’un des livres les plus populaires sur les algorithmes pour les développeurs Java.

Dans cette partie, vous apprendrez les algorithmes de traitement des graphes et des chaînes de caractères.

Vous apprendrez également quelques structures de données et algorithmes avancés utilisés dans le développement d’applications.

Parlant de la preuve sociale, Algorithmes Partie 1 et Algorithmes Partie 2 sont tous deux des cours hautement recommandés et ont des critiques et des évaluations impressionnantes.

Algorithmes – Partie 2

Cours #4. Structures de données en Java

Ce cours est un cours d’introduction en ligne sur les structures de données, les algorithmes et les analyses de complexité. Il vous enseignera la conception, la mise en œuvre et les analyses des structures de données de base en utilisant le langage Java.

La meilleure partie de ce cours est le nombre d’exemples pratiques et le fait qu’il se concentre sur l’intuition plutôt que sur les formules et les preuves mathématiques.

Structure de données en Java

Le cours fournit une bonne introduction à « l’analyse de complexité », qui permet de repérer un programme peu (et très) performant, même sans avoir besoin de l’exécuter.

C’est tout sur certains des cours gratuits de structure de données et d’algorithme disponibles en ligne. Vous pouvez utiliser ces cours pour apprendre les structures de données et les algorithmes à votre propre rythme.

Ils ne sont peut-être pas tous complets, mais ils constituent une bonne introduction. Une fois que vous aurez suivi ces cours, vous pourrez choisir un bon livre comme Introduction aux algorithmes pour compléter vos connaissances.

Cours n°5. Structures de données faciles à avancées

Mise à jour : ce cours n’est plus gratuit, mais c’est un excellent cours et peut valoir le coup pour vous. Ce cours de structure de données et d’algorithme de Udemy est pour toutes les personnes qui veulent apprendre les structures de données d’un niveau de base absolu à un niveau avancé.

Ce cours ne s’attend pas à ce que vous ayez une connaissance préalable des structures de données, mais une connaissance préalable de base de Java est utile.

L’auteur @William Fiset est un ingénieur logiciel chez Google et un ancien finaliste mondial de l’ACM-ICPC et a d’excellentes compétences en programmation informatique et en résolution de problèmes.

Parlant de preuve sociale, le cours a plus de 25K étudiants et une évaluation moyenne de 4,1 sur 683 évaluations, ce qui est impressionnant.

En bref, c’est un guide complet pour apprendre tout ce qu’il y a à savoir sur les structures de données.

Easy to Advanced Data Structures

C’est aussi un cours idéal pour les étudiants en informatique et les professionnels du logiciel en activité qui veulent apprendre les structures de données et les algorithmes dans une perspective d’entretien.

Donc, si vous cherchez à obtenir un emploi dans des entreprises basées sur des produits comme Amazon, Google, Microsoft ou Facebook, vous pouvez utiliser ce cours pour donner un coup de fouet à votre préparation.

Plus d’apprentissage

  • Structures de données et algorithmes : Deep Dive Using Java
  • Structures de données et algorithmes – Partie 1 et 2
  • 10 livres pour préparer les entretiens d’embauche en programmation technique/codage
  • 10 livres sur les algorithmes que chaque programmeur devrait lire
  • Top 5 Data Structure and Algorithm Books for Java Developers
  • From 0 to 1 : Structures de données & Algorithmes en Java
  • Analyse des structures de données et des algorithmes – Entretien d’embauche

Notes de clôture

Merci. Vous êtes arrivé à la fin de l’article. Bonne chance dans votre parcours de programmation ! Ce ne sera certainement pas facile, mais en suivant ces cours, vous êtes un pas de plus vers la maîtrise de la structure de données et des algorithmes que les autres.

Si vous aimez cet article, alors partagez avec vos amis et collègues, et n’oubliez pas de suivre javinpaul sur Twitter !

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.