Parcours de graphe
Objectifs
- Définir le parcours d'un graphe
- Différencier les parcours en profondeur et en largeur
- Définir, différencier et utiliser une pile et une file
- Appliquer un parcours en profondeur et en largeur à un graphe
Cours
F pour passer en plein écran ou O pour afficher la vue d'ensemble.
Versions sans animation, plein écran, imprimable.
Exercices
Pile
Lire les symboles de gauche à droite :
- Lettre : empiler
- * : dépiler
I N V O * * * *V * R E * * T *L E B * U L * * *E L B * U * L * * *
Solution
I N V O * * * *:O V N IV * R E * * T *:V E R TL E B * U L * * *:B L U EE L B * U * L * * *:B U L L E
File
Lire les symboles de gauche à droite :
- Lettre : enfiler
- * : défiler
I N V O * * * *V * R E * * T *
Solution
I N V O * * * *:I N V OV * R E * * T *:V R E T
L'ordre est préservé : FIFO (First In First Out)
Parcours d'arbre
Quelle est l'ordre de parcours de l'arbre suivant en commençant par bleu ?
- Parcours en profondeur (DFS)
- Parcours en largeur (BFS)
Solution
Réponses possibles :
- bleu - rouge - jaune - turquoise - orange - vert - noir
- bleu - rouge - vert - jaune - turquoise - noir - orange
Parcours de graphe
Quelle est l'ordre de parcours du graphe suivant en commençant par bleu ?
- Parcours en profondeur (DFS)
- Parcours en largeur (BFS)
Solution
Réponses possibles :
- bleu - rouge - jaune - turquoise - orange - noir - vert
- bleu - rouge - vert - jaune - turquoise - noir - orange
Notation polonaise inverse
Calculer les expressions suivantes en notation polonaise inverse , par exemple :
12 3 + 4 2 - * devient ( 12 + 3 ) * ( 4 - 2 ) = 15 * 2 = 30
8 4 - 2 3 + /5 6 2 + * 8 4 / -7 3 + 2 5 + * 4 -10 2 3 * + 6 2 / -
Solution
( 8 - 4 ) / ( 2 + 3 )=4 / 5=0.8( 5 * ( 6 + 2 ) ) - ( 8 / 4 )=40 - 2=38( ( 7 + 3 ) * ( 2 + 5 ) ) - 4=10 * 7 - 4=70 - 4=66( 10 + ( 2 * 3 ) ) - ( 6 / 2 )=10 + 6 - 3=16 - 3=13
Convertir les expressions suivantes de la notation polonaise inverse en expressions infixes, par exemple :
A B + C D - * devient ( A + B ) * ( C - D )
A B C - * D E + /A B + C D + * E F - /A B C * + D E F + / -A B + C D - E F + * /
Solution
( A * ( B - C ) ) / ( D + E )( ( A + B ) * ( C + D ) ) / ( E - F )( A + ( B * C ) ) - ( D / ( E + F ) )( ( A + B ) / ( C - D ) ) * ( E + F )
Convertir les expressions suivantes en notation polonaise inverse, par exemple :
( A + B ) * ( C - D ) devient A B + C D - *
( A - B ) / ( C + D )A * ( B + C ) - D / E( A + B ) * ( C + D ) / ( E - F )A + B * C - D / ( E + F )
Solution
A B - C D + /A B C + * D E / -A B + C D + * E F - /A B C * + D E F + / -
Références
- https://fr.wikipedia.org/wiki/Parcours_de_graphe
- https://fr.wikipedia.org/wiki/Algorithme_de_parcours_en_profondeur
- https://fr.wikipedia.org/wiki/Algorithme_de_parcours_en_largeur
- https://fr.wikipedia.org/wiki/Pile_(informatique)
- https://fr.wikipedia.org/wiki/File_(structure_de_donn%C3%A9es)
- https://fr.wikipedia.org/wiki/Notation_polonaise_inverse
- https://www.lecluse.fr/nsi/NSI_T/donnees/listes_piles_files/
- https://www.programiz.com/dsa/graph-dfs
- https://www.programiz.com/dsa/graph-bfs


















