From 2acaac60cb90e66ec615af8730a35ac15fa9ae15 Mon Sep 17 00:00:00 2001 From: "paul.albuquer" <paul.albuquerque@hesge.ch> Date: Thu, 5 Jun 2025 18:52:46 +0000 Subject: [PATCH] Edit cours_25.md --- slides/cours_25.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/slides/cours_25.md b/slides/cours_25.md index 1397cfd..5f8d9c0 100644 --- a/slides/cours_25.md +++ b/slides/cours_25.md @@ -42,7 +42,7 @@ date: "2025-06-06" # Formalisation: Les arbres couvrants -* Qu'est-ce qu'un arbre couvrant? Des idées? De quel objet on part? Où va-t-on? +* Qu'est-ce qu'un arbre couvrant? Des idées? De quel objet part-on? Où va-t-on? . . . @@ -55,7 +55,7 @@ date: "2025-06-06" # Arbres couvrants -* Quels algorithmes que nous avons déjà vus permettent de construire des arbres couvrants? +* Quels algorithmes que nous avons déjà vus, permettent de construire des arbres couvrants? . . . @@ -63,11 +63,11 @@ date: "2025-06-06" . . . - + # Arbres couvrants minimaux -* Un *arbre couvrant minimal* est un sous-graphe d'un graphe non-orienté pondéré $G(V,E)$, tel quel: +* Un *arbre couvrant minimal* est un sous-graphe d'un graphe non-orienté pondéré $G(V,E)$ tel quel: * C'est un arbre (graphe acyclique); * Il couvre tous les sommets de $G$ et contient $|V|-1$ arêtes; * Le coût total associé aux arêtes de l'arbre est minimum parmi tous les arbres couvrants possibles. @@ -84,7 +84,7 @@ date: "2025-06-06" * Comment générer un arbre couvrant minimal? - + # Algorithme de Prim @@ -491,13 +491,13 @@ sommets, parent prim(file_priorité, distance, parent) tant que !est_vide(fp) s_courant, fp = défiler(fp) sommets = insérer(sommets, s_courant) - pour s_voinsin dans voisinage(s_courant) et pas dans sommets + pour s_voisin dans voisinage(s_courant) et pas dans sommets // ou dans fp - si poids(s_courant, s_voinsin) < distance[s_voinsin] - parent[s_voinsin] = s_courant - distance[s_voinsin] = poids(s_courant, s_voinsin) + si poids(s_courant, s_voisin) < distance[s_voisin] + parent[s_voisin] = s_courant + distance[s_voisin] = poids(s_courant, s_voisin) fp = changer_priorité(fp, - s_voinsin, poids(s_courant, s_voinsin)) + s_voisin, poids(s_courant, s_voisin)) retourne sommets, parent ``` @@ -531,7 +531,7 @@ O(|V|) u, fp = défiler(file_priorité) sommets = insérer(sommets, u) pour v dans voisinage de u et pas dans sommets O(|E|) si w(u, v) < distance[v] - // màj dista + parent + // màj distance + parent O(|V|) fp = changer_priorité(fp, w, w(u, v)) retourne sommets, parent ``` -- GitLab