[PDF] Parcours de graphes Graphes. 4. Représentation des





Previous PDF Next PDF



Plan Langage Java • Exceptions Algorithmique • Implantations dun

Soit F un parcours en largeur à partir de s d'un graphe G. Pour chaque sommet v ? s il existe un premier élément v' de F tel que (v'



Représentation des graphes et Programmation

un graphe non orienté est dit connexe si on peut aller de tout sommet vers tous les en profondeur et le parcours en largeur. ... Graphe : programme Java.



Algorithmes en Java Chap. 5 : Graphes

Nov 11 2013 Parcours en largeur. Parcours en profondeur. 3 Fermeture transitive des graphes. Algorithme de Warshall. 4 Recherche du plus court chemin.



Parcours de graphes

Graphes. 4. Représentation des graphes. 5. Parcours en profondeur. 6. Parcours en largeur. 7. Arbres de recouvrement java FIFO 10 3 4 5 - - 7 8 - - 9.



GRAPHES ET ALGORITHMES

Graphes et Algorithmes – 4ème édition – M. Gondran et M. Minou Lavoisier



Parcours dun graphe

Apr 1 2013 Parcours en largeur : principe de l'algorithme. Vous devez parcourir toutes les pages d'un site web. Les pages sont les sommets d'un graphe ...



Première partie : Algorithmique avancée pour les graphes

Algorithme 2 : Parcours en largeur d'un graphe. 1 Fonction BFS(g s0). Entrée. : Un graphe g et un sommet s0 de g. Postcondition : Retourne une arborescence 



Théorie des graphes et optimisation dans les graphes Table des

8.2 Parcours en largeur (Breadth First Search = BFS) . ces petits dessins des graphes les points des sommets et les lignes des arcs ou arêtes





À la recherche du plus court chemin

un algorithme du type parcours en largeur ou BFS (Breadth First Search). Un applet java permettant de créer son propre graphe et de trouver le plus ...



[PDF] Parcours de graphes

Représentation des graphes 5 Parcours en profondeur 6 Parcours en largeur 7 Arbres de recouvrement 8 Sortie de labyrinthe



[PDF] Algorithmes en Java Chap 5 : Graphes

11 nov 2013 · Parcours en largeur Parcours en profondeur 3 Fermeture transitive des graphes Algorithme de Warshall 4 Recherche du plus court chemin



[PDF] Plan Langage Java • Exceptions Algorithmique • Implantations d - Irif

Soit F un parcours en largeur à partir de s d'un graphe G Pour chaque sommet v ? s il existe un premier élément v' de F tel que (v' v) 



[PDF] Première partie : Algorithmique avancée pour les graphes - CNRS

Dans ce chapitre nous étudions les deux principales stratégies d'exploration : — le parcours en largeur qui consiste à explorer les sommets du graphe niveau 



[PDF] Représentation des graphes et Programmation

On distingue deux types de parcours : le parcours en profondeur et le parcours en largeur Page 30 Parcours d'un graphe • Soit le graphe suivant C' 



[PDF] Algorithmique des graphes - Cours 3 – Parcours en largeur - LaBRI

Algorithme 1 : Parcours en largeur BFS(Gs) Données : graphe G sommet de départ s File D (initialisée à vide) marque des sommets (initialisé à



[PDF] IR2 - Algorithmique des graphes TP2 - Parcours en profondeur

L'objectif de ce TP est d'implanter les différents algorithmes vus en cours et en td à base des parcours en profondeur et en largeur (le parcours en largeur 



[PDF] GRAPHES ET ALGORITHMES

Parcours en largeur Premières applications d'un algorithme de parcours Connexité – Forte connexité Divers 3 Optimisation et Graphes



Java : Algorithme des graphes - CodeS-SourceS

11 mai 2006 · Il permet de dessiner des graphes orientés et non orientés et de faire le parcours en largeur en profondeur de voir les arcs couvrant minimun 



[PDF] Les bases de la programmation et de lalgorithmique

une carte routi`ere est un exemple de graphe on utilise la biblioth`eque Java xml sax (cf parcours en largeur au dernier amphi)

  • Comment parcourir un graphe en largeur ?

    L'algorithme de parcours en largeur (ou BFS, pour Breadth-First Search en anglais) permet le parcours d'un graphe ou d'un arbre de la manière suivante : on commence par explorer un nœud source, puis ses successeurs, puis les successeurs non explorés des successeurs, etc.
  • Comment se nomment les éléments d'un graphe reliant entre eux des nœuds ?

    Une boucle est une arête qui relie un nœud à lui même. Un lien double caractérise l'existence de plusieurs arêtes entre deux nœuds donnés.
  • Comment détecter un circuit absorbant dans le graphe ?

    On suppose qu'il existe un chemin de poids minimal entre s à chacun des autres sommets du graphe (il n'y a pas de circuit de poids négatif, un tel circuit est dit absorbant), on note dmin(x) le poids minimal d'un chemin de s à x. { dmin(x) + p(x, y) } pour tout y ? X\\{s} avec dmin(s) = 0.
  • Pour obtenir un arbre ou une forêt couvrant(e) de poids minimum à partir d'un graphe pondéré G=(S,A), on proc? comme suit : On part du graphe G?=(S,?) (G sans arête). Prendre la plus petite arête (de poids minimal) restante dans G. L'ajouter à G? si cela ne crée pas de cycle.

Inf 431 - Cours 1

Parcours de graphes

jeanjacqueslevy.net secr´etariat de l"enseignement:

Catherine Bensoussan

cb@lix.polytechnique.fr

Aile 00, LIX,

01 69 33 34 67

1 .Objectifs de INF 431

Principes de la

Programmation

(2`eme partie)

Modularit´e

- Programmation par objets

Graphes

Grammaires

Concurrence

Initiation `a l"informatique scientifique

Format du cours

D´ebut encadr´e (Amphi+Petite Classe+TD)

Milieu (Amphi+Petite Classe+Devoir Maison)

Fin (Amphi+Projet Informatique)

Notation

CC 4h+PI ; 2 DMs

note module= max note lit´erale=note module+DMs=6

DMs= 6(A);4(B);2(C);1(D);0(E)

2 .Plan 1.

Files d"attente

2. Piles 3.

Graphes

4.

Repr´esentation des graphes

5.

Parcours en profondeur

6.

Parcours en largeur

7.

Arbres de recouvrement

8.

Sortie de labyrinthe

3 .File d"attente (1/4)debutout in fin Deux repr´esentations. Dans un tableau (tampon circulaire). findebutfindebut ou par une liste.findebut 4 .File d"attente (2/4)

Premier arriv´e, premier servi (

First In, First Out

Structure de donn´ees tr`es fr´equente dans les programmes : par exemple dans les OS, le temps-r´eel, . . . et lehardware. Une premi`ere m´ethode compacte consiste `a g´erer un tampon circulaire. class

FIFO {

int debut, fin; boolean pleine, vide; int [ ] contenu;

FIFO (

int n) { debut = 0; fin = 0; pleine = n == 0; vide = true contenu = new int [n]; 5 .File d"attente (3/4) static void ajouter (FIFO f, int x) { if (f.pleine) throw new

Error (

File

Pleine

f.contenu[f.fin] = x; f.fin = (f.fin + 1) % f.contenu.length; f.vide = false ; f.pleine = f.fin == f.debut; static int supprimer (FIFO f) { if (f.vide) throw new

Error (

File Vide int res = f.contenu[f.debut]; f.debut = (f.debut + 1) % f.contenu.length; f.vide = f.fin == f.debut; f.pleine = false return res; Belle sym´etrie . Taille'n.

Taille

born´ee (structure de donn´ee statique).

Complexit´e de

ajouteret supprimeren O(1) 6 .Rappel de notions de Java

Un programme de

test avec comme arguments : la taille, les ´el´ements `a ajouter, les ordres de suppression

Exemple

d"ex´ecution % javac FIFO.java % java FIFO 10 3 4 5 - - 7 8 - - 9 3 4 5 7 public static void main (String[ ] args) { int n = Integer. parseInt (args[0]);

FIFO f =

new

FIFO (n);

for int i = 1; i < args.length; ++i) if (args[i].equals (

System.out.println (supprimer(f));

else int x = Integer. parseInt (args[i]); ajouter (f, x); 7 .File d"attente (4/4) class

FIFO {

Liste debut, fin;

FIFO () { debut =

null ; fin = null static void ajouter (FIFO f, int x) { if (f.fin == null ) f.debut = f.fin = new

Liste (x);

else f.fin.suivant = new

Liste (x);

f.fin = f.fin.suivant; static int supprimer (FIFO f) { if (f.debut == null throw new

Error (

File Vide else int res = f.debut.val; if (f.debut == f.fin) f.debut = f.fin = null else f.debut = f.debut.suivant; return res;

Taille

non born´ee (structure de donn´ee dynamique) en2n.

Complexit´e de

ajouteret supprimerenO(1). 8 .Pile (1/3)sommetoutin

Deux repr´esentations. Dans un tableauhauteur

ou par une liste.sommet 9 .Pile (2/3)

Dernier arriv´e, premier servi (

Last In, First Out

Utile en compilation, en informatique th´eorique. class

Pile {

int hauteur ; int [ ] contenu;

Pile (

int n) {hauteur = 0; contenu = new int [n]; } static void empiler ( int x, Pile p) { if (p.hauteur >= p.contenu.length) throw new

Error (

Pile pleine p.contenu[p.hauteur++] = x; static int depiler (Pile p) { if (p.hauteur <= 0) throw new

Error (

Pile vide return p.contenu [--p.hauteur];

Taille

born´ee (structure de donn´ee statique).

Complexit´e de

empileret depilerenO(1). 10 .Pile (3/3) class

Pile {

Liste sommet;

Pile () { sommet =

null static void empiler ( int x, Pile p) { p.sommet = new

Liste (x, p.sommet);

static int depiler (Pile p) { if (p.sommet == null throw new

Error (

Pile vide int res = p.sommet.val; p.sommet = p.sommet.suivant; return res;

Taille

non born´ee (structure de donn´ee dynamique).

Complexit´e de

empileret depilerenO(1). Loi [Randell et Russel, 1960]

R´ecursif=It´eratif+Pile

)premiers compilateurs 11 .Graphe (1/3)

Un grapheG= (V;E)a un ensemble de

sommets

Vet d"

arcs

E½V£V.

Un arce= (v1;v2)a pour origineorg(e) =v1et pour extr´emit´e ext(e) =v2.

Un graphe est une

relation binaire sur ses sommets.

Exemples

: les rues de Paris, le plan du m´etro.

G= (V;E)est un graphe

non orient´e ssi(v1;v2)2Eimplique(v2;v1)2E.

Par exemple, les couloirs de l"X.

Un chemin est une suite d"arcse1,e2, . . .en, telle queext(ei) =org(ei+1) pour1·i < n, o`un¸0. Un circuit (ou cycle) est un chemin o`u ext(en) =org(e1). Les dag (directed acyclic graphs) sont des graphes orient´es sans cycles.

Exemple

: le graphe des d´ependances entre modules pour la cr´eation d"un projet informatique. (Makefile) Un arbre est undag. Une forˆet (ensemble d"arbres) est undag. 12 .Graphe (2/3) 0 0 0 0 0 1 1 0 1 1 1 1 1 1 0 0 1 0 1 0 0 0 1 1

Graphe de

de Bruijn 13 .Graphe (3/3) 2 4 8 12 9 7 5 6 10 3 11

Graphe des diviseurs

14 .Repr´esentation d"un graphe (1/4)quotesdbs_dbs44.pdfusesText_44
[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

[PDF] cornière support briques

[PDF] cornière pour linteau de brique