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
Intermédiaire 🧠 Fondamentaux Algorithmes

Complexité O(n) — somme d'une liste

Quand on parle de complexité algorithmique, on cherche a savoir comment le temps d'execution evolue quand la taille des données augmente. O(n), ca veut dire …

20 XP 0 réussites
Résoudre →
complexité O(n) boucle
Intermédiaire 🧠 Fondamentaux Algorithmes

Complexité O(n²) — paires en double boucle

O(n²), ca veut dire quadratique. Le temps d'execution augmente avec le carre de la taille des données. Si ta liste double, le temps est multiplie …

20 XP 0 réussites
Résoudre →
complexité O(n2) double-boucle
Intermédiaire 🧠 Fondamentaux Algorithmes

Complexité O(log n) — recherche dichotomique

O(log n), c'est la complexité logarithmique. C'est tres rapide : meme si ta liste a un million d'éléments, il te faut seulement environ 20 étapes. …

20 XP 0 réussites
Résoudre →
complexité O(logn) logarithme
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)
Intermédiaire 🧠 Fondamentaux Algorithmes

Tri a bulles

Le tri a bulles est l'algorithme de tri le plus simple a comprendre. Son nom vient du fait que les grands éléments remontent vers la …

20 XP 0 réussites
Résoudre →
tri bubble-sort O(n2)
Intermédiaire 🧠 Fondamentaux Algorithmes

Tri par selection

Le tri par selection fonctionne comme quand tu tries des cartes a jouer dans ta main. A chaque étape, tu cherches la plus petite carte …

20 XP 0 réussites
Résoudre →
tri selection-sort O(n2)
Intermédiaire 🧠 Fondamentaux Algorithmes

Tri par insertion

Le tri par insertion, c'est exactement ce que tu fais quand tu tries des cartes que tu recois une par une. Tu tiens les cartes …

20 XP 0 réussites
Résoudre →
tri insertion-sort O(n2)
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)
Intermédiaire 🧠 Fondamentaux Algorithmes

Recherche lineaire

La recherche lineaire est la méthode la plus basique pour trouver un élément dans une liste. Tu parcours les éléments un par un, du debut …

20 XP 0 réussites
Résoudre →
recherche lineaire O(n)
Intermédiaire 🧠 Fondamentaux Algorithmes

Recherche binaire

La recherche binaire est beaucoup plus rapide que la recherche lineaire, mais elle a une contrainte : la liste doit etre triee. C'est comme chercher …

20 XP 0 réussites
Résoudre →
recherche binaire O(logn)
Intermédiaire 🧠 Fondamentaux Algorithmes

Recherche du minimum et maximum

Trouver le minimum et le maximum d'une liste en un seul parcours, c'est un exercice classique d'optimisation. L'idee est simple : tu initialises le minimum …

20 XP 0 réussites
Résoudre →
recherche minimum maximum
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
Intermédiaire 🧠 Fondamentaux Algorithmes

Pile (stack) avec une liste

Une pile, c'est comme une pile d'assiettes. Tu ne peux poser une assiette que sur le dessus, et tu ne peux retirer que celle du …

20 XP 0 réussites
Résoudre →
pile stack LIFO
Intermédiaire 🧠 Fondamentaux Algorithmes

File (queue) avec collections.deque

Une file, c'est comme la file d'attente au cinema. Le premier arrive est le premier servi. On appelle ca FIFO : First In, First Out. …

20 XP 0 réussites
Résoudre →
file queue FIFO
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
Intermédiaire 🧠 Fondamentaux Algorithmes

Pile pour vérifier les parentheses

C'est un exercice classique qui montre l'utilite des piles dans un cas concret. Quand un compilateur ou un interpreteur lit du code, il doit vérifier …

20 XP 0 réussites
Résoudre →
pile parentheses validation
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
Intermédiaire 🧠 Fondamentaux Algorithmes

Somme récursive d'une liste

Pour bien comprendre la recursion, voici un exercice tout simple : calculer la somme d'une liste sans boucle et sans la fonction sum. L'idee récursive …

20 XP 0 réussites
Résoudre →
recursion somme liste
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)
Intermédiaire 🧠 Fondamentaux Algorithmes

Insertion dans un BST

Un arbre binaire de recherche (BST), c'est comme un arbre généalogique organisé par taille. Chaque personne a au maximum deux enfants : un a gauche …

20 XP 0 réussites
Résoudre →
bst arbre récursion
Page 1 / 2 Suivant →