La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Types abstraits, liste, pile, file et file prioritaire. Les graphes Récursivité Examen intra #1.

Présentations similaires


Présentation au sujet: "Types abstraits, liste, pile, file et file prioritaire. Les graphes Récursivité Examen intra #1."— Transcription de la présentation:

1 Types abstraits, liste, pile, file et file prioritaire. Les graphes Récursivité Examen intra #1

2 Types abstraits, liste, pile, file et file prioritaire: la meilleure préparation est : – dêtre à jour dans cette matière – davoir fait les laboratoires 1 à 4 Examen intra #1

3 Graphes. Les laboratoires 5 et 6 sont une très bonne préparation. Examen intra #1 Exemples de questions dexamens antérieurs sur les graphes

4 Hiver 2004 Tri topologique? Composantes connexes? Composantes fortement connexes? Plus court chemin entre A et H?

5 Hiver 2001 Description dun graphe sous forme densembles de sommets et d'arcs. Graphe = (NOEUDS, ARC) NOEUDS = {A, B, C, D, E, F, G, H, I}, lensemble des sommets ARCS = {AC, AD, BA, BB, BF, CE, CG, DA, ED, HE, HG}, lensemble des arcs Bool sousGraphe (Graphe g1, Graphe g2, int *err); Pour vérifier si le graphe g1 est un sous-graphe du graphe g2 En utilisant des opérations ensemblistes, écrire la fonction:

6 Automne Écrire le modèle dimplantation 2.Écrire Graphe init(int *err); 3.Écrire Graphe detruireGraphe(Graphe g, int *err);

7 typedef struct arete Arete; typedef struct sommet Sommet; /* Structure pour la liste d'adjacence */ struct arete { Sommet *smtAdj;/* pointeur sur le sommet adjacent */ Arete *areteSuivante; /* Pointeur sur la prochaine arte */ }; /* Structure pour représenter un sommet du graphe */ struct sommet { int etiquette; /* étiquette du Sommet */ int etat; /* état pour le parcours. 1 : Prêt, 2 : Attente, 3 : Traité */ Sommet *smtSuivant; /* pointeur sur le prochain sommet dans la liste de sommets du Graphe */ Arete *lstArete;/* la liste d'adjacence du Sommet */ } ; /* Structure pour représenter le graphe */ typedef struct { Sommet *lstSommets; /* la liste des sommets du Graphe */ } Graphe ; Corrigé: le modèle dimplantation

8 typedef int Graphe[NbNoeuds][ NbNoeuds]; Les sommets sont identifiés par des entiers de 0 à NbNoeuds-1 Écrire la fonction suivante : void analyseGraphe(Graphe gr, int puits[], int *nbPuits, int sources[], int *nbSources) ; Pour déterminer: (a)Les sommets puits du graphe: int puits[] de cardinalité *nbPuits (b)Les sommets sources du graphe: int sources[] de cardinalité *nbSources Hiver 2004

9 Examen Hiver 2003 On cherche à déterminer dans quel ordre on enfiler ses vêtements pour s'habiller de la tête aux pieds. Sachant que : Il faut dabord enfiler son caleçon pour mettre ensuite ses chaussures, son pantalon et sa ceinture. Pour mettre ses chaussures il faut avoir mis ses chaussettes et son pantalon. Pour mettre sa ceinture il faut avoir enfile sa chemise. Pour mettre sa veste il faut avoir enfilé sa cravate et sa ceinture. Pour mettre sa cravate il faut avoir mis sa chemise. On peut mettre sa montre n'importe quand!

10 ch ettes slippant. montrech se cecrve ch res slip chaussettes pantalon chaussures chemise cravate veste ceinture montre Corrigé Graphe de dépendance Solution: trier topologiquement le graphe de dépendance

11 Algorithmique des graphes Graphe fermetureGraphe(Graphe g, int *err); TypeEl * triTopologique ( Graphe g, int *err); Graphe composanteConnexe ( Graphe g, TypeEl s, int *err); BOOL isConnexe(Graphe g, int * err); Rappel: laboratoire #6

12 Rappel sur la récursivité Voir les nombreux exercices corrigés dans le semainier, semaine4.


Télécharger ppt "Types abstraits, liste, pile, file et file prioritaire. Les graphes Récursivité Examen intra #1."

Présentations similaires


Annonces Google