Bonjour,
J'ai un petit exercice que je n'arrive pas a résoudre. Je dois représenter des graphes afin de réaliser différents algorithmes de coloration.
Voici ma structure :
Je souhaiterais construire une liste des sommets de mon graphe par dégré décroissant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 type couleur = | Vierge | Couleur of int;; type sommet = {id : int; mutable couleur : couleur; mutable voisins : sommet list};; type graphe = sommet list;;
Pour cela j'ai la méthode suivante :
La fonction "degre_sommet" fonctionne et retourne bien le degré du sommet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 let rec listeSommet l = match l with |[] -> [] |[t::q] -> (t.id,degre_sommet t)::(listeSommet q);;
Mon probleme est que ma fonction listeSommet ne fonctionne pas et me retourne : "This expression has type sommet list but is here used with type
sommet list list"
En espérant trouver un peu d'aide,
Clément.
Partager