Aller au contenu

Plus Court Chemin dans un Labyrinthe

BFS sur grille 2D

Exercice Intermédiaire · Graphes · prepa scientifique et economique (CPGE)

Enonce

Trouver le plus court chemin dans un labyrinthe (grille 2D). Retourner la longueur du chemin, ou -1 si impossible.

⚠ Bonus : Reconstruire et afficher le chemin.

Signature attendue

def plus_court_chemin(grille: list, depart: tuple, arrivee: tuple) -> int:

Exemple

  • plus_court_chemin([[0, 0, 1], [1, 0, 0], [0, 0, 0]], (0, 0), (2, 2)) → 4

📖 Rappel de cours

Un labyrinthe peut être modélisé par une grille 2D où 0 = passage et 1 = mur. Le BFS sur grille donne le plus court chemin (en nombre de cases).

Modélisation :

Chaque case $(i,j)$ est un sommet. Les voisins sont les 4 cases adjacentes (haut, bas, gauche, droite) si elles sont dans la grille et ne sont pas des murs.

BFS :

Complexité : $O(n \times m)$ où $n \times m$ est la taille de la grille.

← Exercices sur les graphes en Python — BFS, DFS, Dijkstra

Exercices du meme theme

  • Algorithme de Prim
  • Algorithme de Kruskal
  • Coloration de Graphe
  • Représentations d'un Graphe
  • Test de Bipartisme
  • Détection de Cycle (graphe orienté)

La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Essai gratuit
Testez toutes les fonctionnalités sans engagement
En continuant, vous acceptez notre politique de confidentialité.
Déjà abonné ? Se reconnecter
Recevez un lien de connexion par email
Parcourir gratuitement →
Aperçu limité · sans inscription · sans vérification IA
€4,99
/ mois · accès illimité · résiliable
Paiement sécurisé
En vous abonnant, vous acceptez nos conditions et politique de confidentialité.
Résiliation possible depuis votre espace PayPal.

Chargement...

Initialisation de l'environnement

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Progression
0 / 0
Solo
— / —
Python... SQL...
Recherche
🔬 Bac a sable Python ↗ 🧪 Bac a sable SQL ↗ 📝 Concours blanc ↗ 🏖️ Code à la plage ↗ 📚 Listes de rentrée ↗ 🛠️ Admin ↗
Tu aimes PrepaPython ?
Fais-le savoir !
← Retour à l'accueil Mentions legales & confidentialite