Exercices de Code

Pratique Python, IA Engineering et bien plus avec des exercices interactifs et des tests automatiques.

Tous niveaux Debutant Intermediaire Avance
Tous les sujets Les Bases Python (71) Structures de données (40) Fonctions & Modules (106) POO (53) Architecture & Patterns (57) Algorithmes (47) Concepts Web & Django (50) IA & Data Science (22) Prompt Engineering (15) Projets guidés (81) Django Avancé (18) AI Engineering (19) Machine Learning (30) Entraîner son LLM (15) Computer Vision (18)

Suivre un parcours

Python Fondamental 3 sections
Developpeur Python 6 sections
Algorithmes & Entretiens 3 sections
Web & Django 4 sections
IA & Machine Learning 4 sections
IA Generative & RAG 5 sections
Automatisation & Scripts 5 sections
Neurosciences & IA 5 sections
Vision par Ordinateur 4 sections
Avancé 🧠 Fondamentaux Algorithmes

Comparer les complexités

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 …

30 XP 0 réussites
Résoudre →
complexité O(1) O(n)
Avancé 🧠 Fondamentaux Algorithmes

Tri fusion (merge sort)

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, …

30 XP 0 réussites
Résoudre →
tri merge-sort O(nlogn)
Avancé 🧠 Fondamentaux Algorithmes

Tri rapide (quick sort)

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. …

30 XP 0 réussites
Résoudre →
tri quick-sort O(nlogn)
Avancé 🧠 Fondamentaux Algorithmes

Recherche avec condition — filtre et tri

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 …

30 XP 0 réussites
Résoudre →
recherche filtre tri
Avancé 🧠 Fondamentaux Algorithmes

Liste chainee simple

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 …

30 XP 0 réussites
Résoudre →
liste-chainee noeud pointeurs
Avancé 🧠 Fondamentaux Algorithmes

Table de hachage simplifiee

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 …

30 XP 0 réussites
Résoudre →
table-hachage hash collision
Avancé 🧠 Fondamentaux Algorithmes

File de priorite

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 …

30 XP 0 réussites
Résoudre →
file-priorite tas priorite
Avancé 🧠 Fondamentaux Algorithmes

Aplatir une liste imbriquee

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], …

30 XP 0 réussites
Résoudre →
recursion aplatir liste-imbriquee
Avancé 🧠 Fondamentaux Algorithmes

Tours de Hanoi

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 …

30 XP 0 réussites
Résoudre →
recursion hanoi divide-and-conquer
Avancé 🧠 Fondamentaux Algorithmes

Recherche binaire récursive

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, …

30 XP 0 réussites
Résoudre →
recursion recherche-binaire O(logn)
Avancé 🧠 Fondamentaux Algorithmes

Trouver un chemin dans un graphe

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. …

30 XP 0 réussites
Résoudre →
graphe chemin bfs
Avancé 🧠 Fondamentaux Algorithmes

Plus longue sous-sequence commune (LCS)

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 …

30 XP 0 réussites
Résoudre →
lcs dp programmation-dynamique
Avancé 🧠 Fondamentaux Algorithmes

Problème du sac a dos (Knapsack)

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 …

30 XP 0 réussites
Résoudre →
knapsack sac-à-dos dp
Avancé 🧠 Fondamentaux Algorithmes

Nombre premier recursif

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 …

30 XP 0 réussites
Résoudre →
recursion premier avance
Avancé 🧠 Fondamentaux Algorithmes

Triangle de Pascal

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 …

30 XP 0 réussites
Résoudre →
recursion pascal avance