Pratique Python, IA Engineering et bien plus avec des exercices interactifs et des tests automatiques.
Pour bien comprendre les differences de complexité, rien de mieux que de les implémenter cote a cote. O(1) veut dire temps constant : peu importe …
Le tri fusion utilise la stratégie diviser pour regner. L'idee est brillante : si tu ne sais pas trier une grande liste, coupe-la en deux, …
Le tri rapide est souvent le plus utilise en pratique. Son idee : choisir un élément pivot, puis séparer tous les éléments en trois groupes. …
Dans la vraie vie, on cherche rarement un élément exact. On veut plutot les N meilleurs éléments qui satisfont une condition. Par exemple : les …
Une liste chainee, c'est comme un train : chaque wagon (noeud) contient une donnée et un lien vers le wagon suivant. Le dernier wagon ne …
Le dictionnaire Python (dict) est en fait une table de hachage. C'est l'une des structures de données les plus importantes en informatique, car elle permet …
Une file de priorite, c'est comme les urgences a l'hopital. Les patients ne sont pas traites dans l'ordre d'arrivee, mais par ordre de gravite. Un …
Aplatir une liste, c'est transformer une liste qui contient d'autres listes (a n'importe quelle profondeur) en une liste plate. Par exemple : [1, [2, 3], …
Les Tours de Hanoi, c'est un puzzle classique. Tu as trois tiges (A, B, C) et n disques de tailles differentes empiles sur la tige …
Tu as deja implémente la recherche binaire avec une boucle while. Maintenant, refais-la de facon récursive. Le principe est le meme : a chaque appel, …
Tu sais maintenant parcourir un graphe. Mais comment trouver le chemin entre deux noeuds ? C'est comme trouver l'itineraire entre deux villes sur une carte. …
La LCS (Longest Common Subsequence) est un problème fondamental en informatique. On l'utilise par exemple pour comparer des fichiers (comme git diff) ou des sequences …
Tu pars en randonnée avec un sac a dos qui ne peut porter que 50 kg. Tu as plusieurs objets, chacun avec un poids et …
Un nombre premier est un nombre supérieur a 1 qui n'est divisible que par 1 et par lui-meme. Par exemple 7 est premier (divisible seulement …
Le triangle de Pascal est un triangle de nombres ou chaque nombre est la somme des deux nombres juste au-dessus de lui. Les bords du …