OCaml (option informatique) · Chapitre 14 · Exercice de TD
Voisins communs
Graphes : modélisation et représentations · niveau 2
Énoncé
Écrire voisins_communs m i j : le nombre de sommets voisins à la fois de i et de j.
Corrigé
let voisins_communs m i j =
let n = Array.length m in
let c = ref 0 in
for k = 0 to n - 1 do
if m.(i).(k) && m.(j).(k) then c := !c + 1
done;
!c
On compte les sommets k adjacents simultanément à i et à j. La matrice rend ce test direct ( par sommet), d'où un coût . (En listes, il faudrait croiser deux listes, plus laborieux.)
Exercices semblables
- Nombre d'arêtes corrigé
- Matrice vers listes corrigé
- Listes vers matrice corrigé
- Graphe complet corrigé
- Sommet isolé corrigé