Adloun

Graphe complet

Exercice · OCaml (option informatique), chapitre 14 — Graphes : modélisation et représentations

Énoncé

Écrire est_complet m : toute paire de sommets distincts est-elle reliée ?

Corrigé

let est_complet m =
  let n = Array.length m in
  let ok = ref true in
  for i = 0 to n - 1 do
    for j = 0 to n - 1 do
      if i <> j && not m.(i).(j) then ok := false
    done
  done;
  !ok

On vérifie qu'aucune paire (i, j) distincte n'est dépourvue d'arête. Un graphe complet à n sommets a arêtes ; sa matrice n'a que des true hors diagonale.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.