Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
les_fiches_revisions:algorithmique:algo_graphes [2021/01/12 10:52] lf created |
les_fiches_revisions:algorithmique:algo_graphes [2021/01/14 11:03] (Version actuelle) lf |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | en cours par fl | + | ======Algorithmes sur les graphes===== |
+ | |||
+ | Il existe 2 méthodes pour parcourir un graphe : \\ | ||
+ | •Le parcours | ||
+ | •le parcours en profondeur | ||
+ | •Chercher une chaine dans un graphe | ||
+ | |||
+ | ===A quoi ça sert ?=== | ||
+ | |||
+ | Les parcours d' | ||
+ | |||
+ | ==== Le parcours en largeur ==== | ||
+ | |||
+ | < | ||
+ | VARIABLE | ||
+ | G : un graphe | ||
+ | s : noeud (origine) | ||
+ | u : noeud | ||
+ | v : noeud | ||
+ | f : file (initialement vide) | ||
+ | |||
+ | //On part du principe que pour tout sommet u du graphe G, u.couleur = blanc à l' | ||
+ | DEBUT | ||
+ | s.couleur ← noir | ||
+ | enfiler (s,f) | ||
+ | tant que f non vide : | ||
+ | u ← defiler(f) | ||
+ | pour chaque sommet v adjacent au sommet u : | ||
+ | si v.couleur n'est pas noir : | ||
+ | v.couleur ← noir | ||
+ | enfiler(v, | ||
+ | fin si | ||
+ | fin pour | ||
+ | fin tant que | ||
+ | FIN | ||
+ | </ | ||
+ | |||
+ | Voyez ce programme comme une tache d' | ||
+ | Le programme va d' | ||
+ | \\ | ||
+ | Si on part du point I on aura un ordre de visite de: I , E , H , C , D , G , H , B , F et A \\ | ||
+ | La distance entre le point I et celui visité est indiqué sur le graphe {{: | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ |