Algorithm Visualizer est une plateforme interactive en ligne qui permet de visualiser et comprendre des algorithmes grâce à des représentations graphiques. Le site propose des démonstrations en temps réel d'algorithmes classés par catégories (comme le backtracking ou la programmation dynamique), facilitant leur apprentissage pour les étudiants, enseignants ou professionnels.
L'outil s'appuie sur des bibliothèques de visualisation en plusieurs langages de programmation, extraites directement du code source. Des ressources complémentaires, comme des tutoriels et des articles, sont également disponibles pour approfondir les concepts.
Le projet est open source et collaboratif, avec plusieurs dépôts GitHub dédiés à l'application web (développée en React), au serveur backend et aux algorithmes visualisés. Les contributions sont encouragées pour enrichir la base de données ou améliorer les fonctionnalités.
L'un des problèmes de la récursivité est le dépassement de mémoire, chaque appel récursif ajoutant des données à mémoriser. Il est possible d'éviter cela tout en conservant la récursivité en utilisant la récursion terminale. Au lieu d'écrire
function factorielle(int n) {
if (n <= 1) {
return 1;
}
return n * factorielle(n - 1);
}
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Comme le dit l'auteur, la notation Big O est une mesure pour savoir combien de temps prendra l'ordinateur pour faire quelque chose.
Tout est dans le titre
Un problème basé sur les échecs, avec plusieurs solutions en python
Tout est dans le titre (gratuit en PDF)