Algorithmes pour le Web: Exercices Guenegou Thibaud 16 Novembre 2006 Exercices 1. Reproduire le schéma du noeud papillon, en expliquer les composantes, estimer leurs tailles, et placer des exemples. Exercices 2. Donner un algorithme permettant de déterminer si un graphe donné G = (S, A) est biparti. Estimer la complexité ? Exercices 3. Définir le diamètre d’un graphe G = (S, A) orienté et donner un algorithme pour le calculer. Complexité ? Idem pour le diamètre moyen. Exercices 4. Donner un algorithme qui retourne les composantes connexes d’un graphe G = (S, A) non-orienté. Complexité ? Et pour un graphe orienté ? Exercices 5. Etant donné un graphe orienté G = (S, A) représenté par sa matrice d’incidence, donner un algorithme pour effectuer chacune des taches suivantes : – Rechercher les puits ( sommets n’ayant pas d’arcs sortant et ayant au moint un arc entrant ) – Rechercher les sources ( sommets n’ayant pas d’arcs entrant et ayant au moint un arc sortant ) – Rechercher les sommets isolés ( sans arcs entrants ni sortants ) Exercices 6. Soit G = (S, A, µ) un graphe non-orienté, quel est le nombre de chemin de longueur n d’un noeud i vers un noeud j ? Exercices 7. Soit G = (S, A, µ) un graphe orienté et valué tel que la fonction de valuation µ vérifie µ(a, b) ∈ [0, 1] pour toute pair (a, b) de sommets dans S. La fonction µ repésente la probabilité pour que l’arc soit opérationnel (probabilité de fiabilité). En supposant que ces probabilités soient indépendantes pour des arcs différents, donner un algorithme permettant de trouver un chemin le plus fiable entre deux sommets donnés. Exercices 8. Un couplage maximum est un ensemble max d’arêtes nonadjacentes. dans le cas d’un graphe non-orienté biparti, comment le trouver ? 1