ajout cours parcours, POO sur les graphes

This commit is contained in:
2025-03-09 18:32:21 +01:00
parent eda3dcfcaa
commit 5aaedd5918
3 changed files with 97 additions and 0 deletions

View File

@@ -39,6 +39,16 @@ def bfs(graphe, depart):
file.append(voisin)
```
### Illustration du parcours en largeur
![parcours_largeur.gif](https://glassus.github.io/terminale_nsi/T1_Structures_de_donnees/1.4_Graphes/data/bfs.gif)
### Parcours en profondeur (DFS - Depth First Search)
Le parcours en profondeur explore un chemin le plus loin possible avant de revenir en arrière. Cest une approche de type pile (LIFO).
@@ -64,6 +74,14 @@ def dfs(graphe, depart, visite=None):
dfs(graphe, voisin, visite)
```
### Illustration
![Parcours_Profondeur](https://www.gaudry.be/img/math/graphe/graphes-dfs.gif)
----------
### Détection de cycles dans un graphe
Un cycle est une chaîne fermée sans répétition darêtes. Pour détecter un cycle dans un graphe non orienté, on peut utiliser DFS :
@@ -138,3 +156,12 @@ class Graphe:
print(f"{sommet}: {', '.join(map(str, voisins))}")
```
------
Auteur : Florian Mathieu
Licence CC BY NC
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="Licence Creative Commons" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" /></a> <br />Ce cours est mis à disposition selon les termes de la <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Licence Creative Commons Attribution - Pas dUtilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International</a>.