Ceci est une soumission pour le défi d'écriture du Nouvel An 2025 : Retro'ing et débogage 2024.
J'ai commencé le cours Algorithmes Partie I de l'Université de Princeton sur Coursera, et je pense que le contenu est solide. Je veux dire, c'est littéralement enseigné par le gars qui a écrit LE livre sur les algorithmes, Robert Sedgwick.
Le cours couvre la plupart de ce qui est nécessaire pour comprendre les algorithmes. Il constitue un excellent guide sur ce que vous devez apprendre. Cependant, j'ai quelques doutes quant à la manière dont le cours est enseigné et à la manière dont le contenu est présenté dans le livre.
Suivre ce cours m'a permis d'acquérir une compréhension fondamentale des algorithmes. Je me suis familiarisé avec des concepts clés tels que le tri, la recherche et les structures de données telles que les piles et les files d'attente. Accomplir les missions a été une expérience enrichissante, car j'ai dû surmonter la confusion initiale pour parvenir à des solutions efficaces. De plus, apprendre à traduire des algorithmes en JavaScript à l'aide d'outils d'IA a été une réussite importante qui a amélioré ma polyvalence en matière de programmation.
L'une des leçons les plus importantes que j'ai apprises est l'intérêt de diviser des sujets complexes en parties gérables. En tirant parti de ChatGPT et Claude.ai, j'ai pu traduire des explications denses basées sur Java en JavaScript, avec lequel je suis plus à l'aise. Ce processus a non seulement amélioré ma compréhension du matériel, mais m'a également montré l'importance de trouver des ressources qui complètent mon style d'apprentissage. Une autre leçon était l'importance de la persévérance : de nombreux algorithmes semblaient écrasants au début, mais prenaient du sens avec une exposition et une pratique répétées.
Premièrement, les cours étaient atrocement ennuyeux. La voix de Robert est si monotone qu’il devient difficile d’y prêter attention. De nos jours, le contenu est souvent présenté de manière visuellement attrayante à l'aide de graphiques saisissants et de diapositives interactives qui illustrent clairement comment un réseau est réorganisé ou comment les nœuds sont connectés. Cependant, ce cours affiche simplement une diapositive statique pendant toute la durée du cours.
Deuxièmement, le livre est très riche en texte du début à la fin, avec des phrases compliquées. Comme j'étais nouveau sur Java, cela aurait pu contribuer à mon combat. J'ai fini par utiliser ChatGPT et Claude.ai pour m'aider à décomposer les informations. Ils ont traduit les algorithmes en JavaScript et expliqué les concepts étape par étape, ce qui les a rendus beaucoup plus faciles à comprendre.
Troisièmement, j'ai lu que de nombreux algorithmes du cours sont implémentés d'une manière qui semble inutilement compliquée. Par exemple, le cours utilise fréquemment des boucles while avec true comme condition, puis inclut de nombreuses instructions if avec break à l'intérieur. Ce style peut être difficile à suivre et semble loin d’être idéal.
Bien que ce cours soit très bien noté, je l'ai trouvé ennuyeux et la présentation lourde du texte du livre n'a pas aidé. Cela dit, je suis fier des compétences que j'ai développées grâce à la persévérance et à la résolution créative de problèmes. Peut-être qu'une fois que j'aurai acquis plus d'expérience avec Java, je revisiterai le cours et l'aborderai avec une nouvelle perspective. Dans l'ensemble, cette expérience a renforcé l'importance d'adapter les ressources à mon style d'apprentissage et d'utiliser des outils modernes pour combler les lacunes de compréhension.
Si l'un d'entre vous a lu jusqu'ici et envisage de suivre ce cours, n'hésitez pas à laisser un commentaire ou si vous avez suivi le cours, je suis également curieux de connaître votre avis.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!