6.3.1 Parcours en profondeur itératif 6.3.2 Parcours en profondeur
Université Paris Diderot – LI0436 – 08/09. Ch6. Les arbres. 6.3.1 Parcours en profondeur itératif procedure Parcours(A); var X : sommet ;.
Cours 3: Arbres. Parcours.
Parcourir en profondeur. Parcours en profondeur d'abord: ? on parcourt récursivement. Voici un algorithme générique itératif de parcours d'arbre.
Algorithmes de recherche
Parcours aveugles non informés : profondeur largeur. Parcours informés. Caractéristiques de la recherche en profondeur itérative. Complète.
Arbres et récursivité
Jul 1 2020 1.4 Fonctions récursives et parcours d'arbre ... De même que pour le parcours en profondeur itératif
Intelligence Artificielle Recherche
Recherche de parcours la profondeur du nœud i.e.
Travaux Pratiques no2
Parcours en profondeur itératif. Le parcours en profondeur des arbres doit se faire récursivement pour supprimer la récursivité
Parcours dun graphe
Apr 1 2013 A savoir. A la suite de cette séance
HE01LI – 15/16 def Parcours(A) : 0 X - Université Paris Diderot
Université Paris Diderot – HE01LI – 15/16. Ch5. Recherche de motifs def Parcours(A) : Figure 5.3: Parcours en profondeur itératif
Chapitre 3 : Exploration dun graphe - Algorithmique de graphes
3 Parcours en profondeur (DFS). Prolongement d'une chaˆ?ne élémentaire (appelé racine) la suite d'ensembles définie itérativement comme.
TD 6 Arbres binaires 1 Exercices
Nov 10 2005 Donner l'algorithme itératif de parcours en ordre préfixe d'un Arbre ... des parcours en profondeur d'un Arbre binaire (on suppose que.
[PDF] 631 Parcours en profondeur itératif
Université Paris Diderot – LI0436 – 08/09 Ch6 Les arbres 6 3 1 Parcours en profondeur itératif procedure Parcours(A); var X : sommet ;
[PDF] Algorithmique des graphes - Cours 4 – Parcours en profondeur
Parcours en profondeur : le principe Exploration d'un graphe donné par un agent mobile Il peut se déplacer d'un sommet au voisin en suivant une arête les
[PDF] Parcours de graphes [gp] - Algorithmique - Unisciel
Le parcours en profondeur dit aussi par sondage L'algorithme étant récursif la version itérative équivalente utilisera une pile Exemple
[PDF] Parcours en profondeur et recherche de circuits - UFR SEGMI
Analysons la complexité dans le pire des cas de cette détection de circuit: la boucle pour comporte au maximum m (nombre d'arcs) itérations Pour chacune on
[PDF] Parcours de graphes - IGM
parcours principaux pour les graphes sont les parcours en profondeur et en largeur Ce cha- pitre couvre les algorithmes correspondants ainsi que des
[PDF] Première partie : Algorithmique avancée pour les graphes - CNRS
Une façon naïve de déterminer les différentes SCC d'un graphe consiste à faire un parcours (en largeur ou en profondeur) à partir de chacun des sommets du
[PDF] Algorithmes de recherche - Irif
Parcours aveugles non informés : profondeur largeur Parcours informés Caractéristiques de la recherche en profondeur itérative Complète
[PDF] Parcours dun arbre binaire
Parcours d'un arbre binaire Un arbre binaire est un arbre avec racine dans lequel tout noeud a au plus deux fils : un éventuel fils
[PDF] Cours 3: Arbres Parcours - LIX-polytechnique
Parcours en profondeur d'abord: ? on parcourt récursivement Mais il reste trois possibilités ? Préfixe: traiter la racine parcourir le sous-arbre
[PDF] Intelligence Artificielle Recherche - Université Paris Cité
Recherche de parcours la profondeur du nœud i e la distance entre le nœud et la racine de l'arbre Recherche iterative en profondeur
Quelle est la différence entre le parcours préfixe et le parcours Post-fixé ?
Parcours préfixe : on traite la racine, puis le sous-arbre gauche, puis le sous-arbre droit. Parcours infixe : on traite le sous-arbre gauche, puis la racine, puis le sous-arbre droit. Parcours postfixe : on traite le sous-arbre gauche, puis le sous-arbre droit, puis la racine.Comment faire un parcours en largeur ?
Un parcours en largeur débute à partir d'un nœud source. Puis il liste tous les voisins de la source, pour ensuite les explorer un par un. Ce mode de fonctionnement utilise donc une file dans laquelle il prend le premier sommet et place en dernier ses voisins non encore explorés.- 2.2 Parcours de graphes
2. ils ne poss?nt pas de cycle : il n'est donc possible d'aller de la racine à un sommet arbitraire v que par un seul chemin ; 3. La preuve de cette affirmation est laissée en exercice.
Parcours d'un graphe
ISN 2013
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 1 / 97Exercices a rendre
Trois exercices sont a rendre.L' exercice 1 pourra ^etre rendu sur papier mardi 2 avril (ou en version
electronique si vous preferez).Les exercices 2 et 3 sont a rendre dans les casiers numeriques de vos enseignants lundi 1 avril. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 2 / 97A savoir
A la suite de cette seance, vous devrezsavoirparcourir un graphe en profondeur et en largeur. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 3 / 97L'essentiel de la notion de graphe
On peut apprehender la notion de graphe par l'une de ses representations classiques : des points (sommets du graphe) et des courbes reliant certains de ces points (ar^etes du graphe).g ah bcde f1 2 3456
7
891011
12 Les sommets de ce graphe sonta,b,c,d,e,f,g,h. Les sommetseetc sont adjacents (voisins) : ils sont en eet relies par l'ar^ete 10. Le sommetba pour voisinsh,fetc. Le sommetaest incident aux ar^etes 2 et 3.Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 4 / 97
L'essentiel de la notion de graphe
On peut apprehender la notion de graphe par l'une de ses representations classiques : des points (sommets du graphe) et des courbes reliant certains de ces points (ar^etes du graphe).g ah bcde f1 2 3456
7
891011
12 Lorsqu'on passe d'un sommet a un autre en se deplacant le long d'ar^etes et de sommets, on dit que l'on denit un chemin dans le graphe. On peut par exemple denir le chemin g, 3, a, 2, h, 5, b, 7, f dans le graphe ci-dessus. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 4 / 97Exemples de situations modelisees par un graphe
Le web : chaque page est un sommet du graphe, chaque lienhypertexte est une ar^ete entre deux sommets.Un reseau ferroviaire : chaque gare est un sommet, les voies entre
deux gares sont les ar^etes. Idem avec un reseau routier.Un reseau social : les sommets sont les personnes, deux personnes
sont adjacentes dans ce graphe lorsqu'elles sont \amies". Si la notion d'amitie n'est pas reciproque, le graphe est oriente. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 5 / 97Exemples de situations modelisees par un graphe
Le web : chaque page est un sommet du graphe, chaque lienhypertexte est une ar^ete entre deux sommets.Un reseau ferroviaire : chaque gare est un sommet, les voies entre
deux gares sont les ar^etes. Idem avec un reseau routier.Un reseau social : les sommets sont les personnes, deux personnes
sont adjacentes dans ce graphe lorsqu'elles sont \amies". Si la notion d'amitie n'est pas reciproque, le graphe est oriente. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 5 / 97Exemples de situations modelisees par un graphe
Le web : chaque page est un sommet du graphe, chaque lienhypertexte est une ar^ete entre deux sommets.Un reseau ferroviaire : chaque gare est un sommet, les voies entre
deux gares sont les ar^etes. Idem avec un reseau routier.Un reseau social : les sommets sont les personnes, deux personnes
sont adjacentes dans ce graphe lorsqu'elles sont \amies". Si la notion d'amitie n'est pas reciproque, le graphe est oriente. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 5 / 97Exemples de situations modelisees par un graphe
Le web : chaque page est un sommet du graphe, chaque lienhypertexte est une ar^ete entre deux sommets.Un reseau ferroviaire : chaque gare est un sommet, les voies entre
deux gares sont les ar^etes. Idem avec un reseau routier.Un reseau social : les sommets sont les personnes, deux personnes
sont adjacentes dans ce graphe lorsqu'elles sont \amies". Si la notion d'amitie n'est pas reciproque, le graphe est oriente. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 5 / 97Exemples de situations modelisees par un graphe
Le web : chaque page est un sommet du graphe, chaque lienhypertexte est une ar^ete entre deux sommets.Un reseau ferroviaire : chaque gare est un sommet, les voies entre
deux gares sont les ar^etes. Idem avec un reseau routier.Un reseau social : les sommets sont les personnes, deux personnes
sont adjacentes dans ce graphe lorsqu'elles sont \amies".Si la notion d'amitie n'est pas reciproque, le graphe est oriente.La structure de graphe est en science de l'informatique une structure
abstraite omnipresente. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 5 / 97Representation informatique d'un graphe
Une structure theorique comme un graphe est susceptible de nombreusesimplementations, selon le type de problemes a resoudre.On peut par exemple utiliser la matrice d'adjacence du graphe.
ab cdef g h0 BBBBBBBBBB@a b c d e f g h
a0 1 1 0 0 0 0 0 b1 0 0 1 1 0 0 0 c1 0 0 1 0 0 0 0 d0 1 1 0 1 0 0 0 e0 1 0 1 0 1 1 0 f0 0 0 0 1 0 1 0 g0 0 0 0 1 1 0 1 h0 0 0 0 0 0 1 01 C CCCCCCCCCAJean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 6 / 97Representation informatique d'un graphe
Une structure theorique comme un graphe est susceptible de nombreusesimplementations, selon le type de problemes a resoudre.On peut par exemple utiliser la matrice d'adjacence du graphe.
ab cdef g h0 BBBBBBBBBB@a b c d e f g h
a0 1 1 0 0 0 0 0 b1 0 0 1 1 0 0 0 c1 0 0 1 0 0 0 0 d0 1 1 0 1 0 0 0 e0 1 0 1 0 1 1 0 f0 0 0 0 1 0 1 0 g0 0 0 0 1 1 0 1 h0 0 0 0 0 0 1 01 C CCCCCCCCCAJean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 6 / 97 Exemple de codage : utilisation d'un dictionnaire pythonPython
G=dict()
G['a']=['b','c']
G['b']=['a','d','e']
G['c']=['a','d']
G['d']=['b','c','e']
G['e']=['b','d','f','g']
G['f']=['e','g']
G['g']=['e','f','h']
G['h']=['g']ab
cdef g h Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 7 / 97PILE et FILE
Les notions depileet defilesont deux structures de donnees abstraites importantes en informatique. On limite ci-dessous la presentation de ces notions aux besoins des parcours de graphes envisages ci-apres. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 8 / 97PILE (stack)
La structure depileest celle d'une pile d'assiettes :Pour ranger les assiettes, on les empile les unes sur les autres.
Lorsqu'on veut utiliser une assiette, c'est l'assiette qui a ete empilee en dernier qui est utilisee.Structure LIFO (last in, rst out)
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 9 / 97FILE (queue)
La structure defileest celle d'une le d'attente a un guichet :Les nouvelles personnes qui arrivent se rangent a la n de la le
d'attente.La personne servie est celle qui est arrivee en premier dans la le.Structure FIFO (rst in, rst out).
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 10 / 97Parcours de graphe
Parcours en largeur
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 11 / 97Parcours en largeur : principe de l'algorithme
Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe et un lien entre deux pages est une ar^ete entre ces deux sommets.1Dans le parcours en largeur, on utilise une le. On enle le sommet dedepart (on visite la page index du site).2On visite les voisins de la t^ete de le (pages ciblees par la page de
t^ete de le). On les enle (en les numerotant au fur et a mesure de leur decouverte) s'ils ne sont pas deja presents dans la le, ni deja passes dans la le.3On dele (c'est a dire : on supprime la t^ete de le).4On recommence au point 2 (tant que c'est possible, c'est a dire tant
que la le n'est pas vide). Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 12 / 97Parcours en largeur : principe de l'algorithme
Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe et un lien entre deux pages est une ar^ete entre ces deux sommets.1Dans le parcours en largeur, on utilise une le. On enle le sommet dedepart (on visite la page index du site).2On visite les voisins de la t^ete de le (pages ciblees par la page de
t^ete de le). On les enle (en les numerotant au fur et a mesure de leur decouverte) s'ils ne sont pas deja presents dans la le, ni deja passes dans la le.3On dele (c'est a dire : on supprime la t^ete de le).4On recommence au point 2 (tant que c'est possible, c'est a dire tant
que la le n'est pas vide). Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 12 / 97Parcours en largeur : principe de l'algorithme
Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe et un lien entre deux pages est une ar^ete entre ces deux sommets.1Dans le parcours en largeur, on utilise une le. On enle le sommet dedepart (on visite la page index du site).2On visite les voisins de la t^ete de le (pages ciblees par la page de
t^ete de le). On les enle (en les numerotant au fur et a mesure de leur decouverte) s'ils ne sont pas deja presents dans la le, ni deja passes dans la le.3On dele (c'est a dire : on supprime la t^ete de le).4On recommence au point 2 (tant que c'est possible, c'est a dire tant
que la le n'est pas vide). Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 12 / 97Parcours en largeur : principe de l'algorithme
Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe et un lien entre deux pages est une ar^ete entre ces deux sommets.1Dans le parcours en largeur, on utilise une le. On enle le sommet dedepart (on visite la page index du site).2On visite les voisins de la t^ete de le (pages ciblees par la page de
t^ete de le). On les enle (en les numerotant au fur et a mesure de leur decouverte) s'ils ne sont pas deja presents dans la le, ni deja passes dans la le.3On dele (c'est a dire : on supprime la t^ete de le).4On recommence au point 2 (tant que c'est possible, c'est a dire tant
que la le n'est pas vide). Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 12 / 97Parcours en largeur : principe de l'algorithme
Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe et un lien entre deux pages est une ar^ete entre ces deux sommets.1Dans le parcours en largeur, on utilise une le. On enle le sommet dedepart (on visite la page index du site).2On visite les voisins de la t^ete de le (pages ciblees par la page de
t^ete de le). On les enle (en les numerotant au fur et a mesure de leur decouverte) s'ils ne sont pas deja presents dans la le, ni deja passes dans la le.3On dele (c'est a dire : on supprime la t^ete de le).4On recommence au point 2 (tant que c'est possible, c'est a dire tant
que la le n'est pas vide). Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 12 / 97Parcours en largeur : principe de l'algorithme
Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe et un lien entre deux pages est une ar^ete entre ces deux sommets.1Dans le parcours en largeur, on utilise une le. On enle le sommet dedepart (on visite la page index du site).2On visite les voisins de la t^ete de le (pages ciblees par la page de
t^ete de le). On les enle (en les numerotant au fur et a mesure de leur decouverte) s'ils ne sont pas deja presents dans la le, ni deja passes dans la le.3On dele (c'est a dire : on supprime la t^ete de le).4On recommence au point 2 (tant que c'est possible, c'est a dire tant
que la le n'est pas vide).En d'autres termes, on traite toujours en priorite les liens des pages le plus
t^ot decouvertes. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 12 / 97Parcours en largeur d'un arbre
Parcourir en largeur le graphe ci-dessous a partir du sommet s :s Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 13 / 97Parcours en largeur d'un arbre1
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 14 / 97Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Enler : passage en gris. Deler : passage en noir.
L'ordre pour enler les voisins (ni gris, ni noirs) depend de l'implantation. Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 15 / 97Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 16 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 17 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 18 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 19 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 20 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 21 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 22 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 23 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 24 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 25 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 26 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 27 / 97
Parcours en largeur d'un arbre1
2 5611123
7894
10 1314
Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 28 / 97
Parcours en largeur : une propriete
Une facon de comprendre l'algorithme est d'utiliser une notion de distance :une page est a distance 1 de la page de depart si on l'atteint par unlien direct depuis la page 1,elle est a distance 2 de la page de depart si on peut l'atteindre (par le
plus court chemin) en passant par une page a distance 1 du depart,elle est a distance 3 du depart si on peut l'atteindre (par le plus court
chemin) en passant par une page a distance 1 et une page a distance 2... Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 29 / 97Parcours en largeur : une propriete
Une facon de comprendre l'algorithme est d'utiliser une notion de distance :une page est a distance 1 de la page de depart si on l'atteint par unlien direct depuis la page 1,elle est a distance 2 de la page de depart si on peut l'atteindre (par le
plus court chemin) en passant par une page a distance 1 du depart,elle est a distance 3 du depart si on peut l'atteindre (par le plus court
chemin) en passant par une page a distance 1 et une page a distance 2... Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 29 / 97Parcours en largeur : une propriete
Une facon de comprendre l'algorithme est d'utiliser une notion de distance :une page est a distance 1 de la page de depart si on l'atteint par unlien direct depuis la page 1,elle est a distance 2 de la page de depart si on peut l'atteindre (par le
plus court chemin) en passant par une page a distance 1 du depart,elle est a distance 3 du depart si on peut l'atteindre (par le plus court
chemin) en passant par une page a distance 1 et une page a distance 2... Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 29 / 97Parcours en largeur : une propriete
Une facon de comprendre l'algorithme est d'utiliser une notion de distance :une page est a distance 1 de la page de depart si on l'atteint par unlien direct depuis la page 1,elle est a distance 2 de la page de depart si on peut l'atteindre (par le
plus court chemin) en passant par une page a distance 1 du depart,elle est a distance 3 du depart si on peut l'atteindre (par le plus court
chemin) en passant par une page a distance 1 et une page a distance 2... Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 29 / 97Parcours en largeur : une propriete
Une facon de comprendre l'algorithme est d'utiliser une notion de distance :une page est a distance 1 de la page de depart si on l'atteint par unlien direct depuis la page 1,elle est a distance 2 de la page de depart si on peut l'atteindre (par le
plus court chemin) en passant par une page a distance 1 du depart,elle est a distance 3 du depart si on peut l'atteindre (par le plus court
chemin) en passant par une page a distance 1 et une page a distance2...L'algorithme de parcours en largeur va visiter en premier lieu toutes les
pages a distance 1 du depart, puis toutes les pages a distance 2 du depart, puis toutes les pages a distance 3...(c'est en fait cette propriete qui donne son nom a ce type de parcours). Jean-Manuel Meny { IREM de LYON ()AlgorithmiqueISN 2013 29 / 97BFS (breadth rst search) : programmation python
Exercice avec corrige.
Avec la representation d'un graphe par un dictionnaire comme precedemment, programmer en langage python le BFS avec les variables suivantes :Un dictionnaire P. En n de parcours, pour tout sommet s du graphe P[s] sera le pere de s, c'est a dire le sommet a partir duquel lesommet s a ete decouvert lors du parcours.Un dictionnaire couleur. Pour tout sommet s, couleur[s] vaut blanc si
le sommet s n'est pas passe dans la le, gris s'il est dans la le, noir lorsqu'il est sorti de la le.Une liste Q utilisee comme le (fo) : on enle un sommet lorsqu'ilquotesdbs_dbs44.pdfusesText_44[PDF] parcours en largeur graphe java
[PDF] conflit de puissance définition
[PDF] parcours lecture acces pas cher
[PDF] parcours lecture pdf
[PDF] parcours lecture le petit chaperon rouge
[PDF] parcours lecture acces avis
[PDF] parcours lecture occasion
[PDF] coexistence pacifique cours
[PDF] archives militaire en ligne
[PDF] livret militaire en ligne
[PDF] la coexistence pacifique de 1953 ? 1962 pdf
[PDF] cornière catnic
[PDF] corniere galva pour brique
[PDF] corniere pour linteau brique