Coding Interview Jumpstart : Algorithmes et résolution de problèmes

QUEL EST LE SUJET DE CE COURS?

Dans ce cours, nous ferons ensemble les premiers pas dans le monde passionnant des algorithmes. Si vous n’avez jamais rien appris sur les algorithmes, n’ayez pas peur ou ne soyez pas intimidé. Les algorithmes ne sont pas aussi difficiles que les gens le pensent souvent. Je suis convaincu que n’importe quel programmeur peut maîtriser l’art de la résolution de problèmes et des algorithmes s’il a la motivation pour réussir. Je crois que la plupart des algorithmes peuvent être très faciles à comprendre s’ils sont expliqués clairement et simplement.

Considérant que je sais à quel point le début peut être difficile, car j’ai été dans la même situation une fois, j’ai investi mes connaissances et mon expérience dans ce cours, pour vous aider à faire les premiers pas vers la maîtrise des algorithmes et vous rapprocher un peu plus de Votre travail de rêve.

COMMENT CE COURS EST-IL STRUCTURÉ ?

Section 1 : Présentation

Dans cette section, je vais vous présenter le matériel et la structure du cours.

Section 2 : Analyse de l’algorithme

Dans la section 2, nous allons parler de l’analyse d’algorithmes. Pour certains d’entre vous, ce sera votre premier pas dans le monde des algorithmes et vous comprendrez pourquoi ce sujet est si important.

Nous allons apprendre plusieurs choses :

  • Tout d’abord, nous apprendrons l’importance de l’analyse et pourquoi devons-nous analyser nos solutions.
  • Ensuite, nous allons nous concentrer sur la notation asymptotique, qui est un langage qui nous permet d’analyser le temps d’exécution du programme en identifiant son comportement lorsque la taille d’entrée de l’algorithme augmente.
  • Après cela, nous nous concentrerons sur un type de notation spécifique, appelé notation Big-O, et nous utiliserons la notation Big-O pour comparer les algorithmes.
  • Enfin, nous allons mettre en pratique ces concepts en calculant la complexité temporelle et spatiale de certains algorithmes donnés.

Section 3 : Tri

Le tri est l’un des algorithmes les plus courants au monde. Si vous regardez tout autour, vous pouvez trouver de nombreuses applications qui utilisent un algorithme de tri pour placer les éléments d’une liste dans un certain ordre. Les éléments n’ont pas besoin d’être numérotés, ils peuvent être des chaînes ou peut-être des événements qui sont triés par date.

Dans cette section, nous allons apprendre plusieurs algorithmes de tri :

  • Tri à bulles
  • Tri de sélection
  • Tri par insertion
  • Tri par fusion
  • Tri rapide
  • Comptage Trier

Pour chaque algorithme, nous déterminerons la complexité temporelle et spatiale et comparerons les compromis.

À la fin de cette section, vous apprendrez les algorithmes de tri les plus importants et vous serez en mesure de déterminer quel est le meilleur algorithme à utiliser en fonction du type et de la plage des données à trier.

Section 4 : Recherche binaire

Cette section est consacrée à un algorithme de recherche fondamental en informatique : la recherche binaire.

Nous commençons par une explication de l’idée de base de l’algorithme et de sa mise en œuvre.

Ensuite, nous allons explorer certaines variantes de la recherche binaire et comment nous pouvons les implémenter :

  • Recherche de la première occurrence d’une valeur cible dans le tableau d’entrée
  • Recherche de la dernière occurrence d’une valeur cible dans le tableau d’entrée
  • Recherche du nombre d’occurrences d’une valeur cible dans le tableau d’entrée

Section 5 : BONUS : Problèmes d’entrevue

Cette section est une section bonus spéciale, ici je publierai des solutions détaillées aux problèmes d’entretien. Je vous encourage à publier des problèmes intéressants dans les discussions, et chaque une ou deux semaines, je choisirai de nouveaux problèmes et publierai une nouvelle vidéo dans cette section où nous résolvons ces nouveaux problèmes.

Je vous encourage également à poser des questions sur les problèmes que vous ne savez pas comment résoudre ou si vous avez des bogues dans votre code et que vous ne savez pas pourquoi votre programme ne fonctionne pas

Similar Posts