J'ai toujours des problèmes avec cela, donc je peux demander de l'aide.Standard ML Binary Tree
Nous sommes donnés:
datatype which = STRING of string | INT of int
Partie 1. Nous avons dit que nous devons créer un autre type de données nommé whichTree pour un arbre binaire contenant les valeurs de type « qui » où les données sont seulement aux feuilles de arbre.
Je suppose que ce serait la bonne réponse:
datatype whichTree = Empty | Leaf of which | Node of whichTree*whichTree;
Il se trouve qu'il est pas quand je lance:
val inttree = Node(Leaf(1), Leaf(2));
Je reçois une erreur.
j'ai pu comprendre que je peux faire quelque chose comme ceci:
datatype 'a whichTree = Empty | Leaf of 'a | Node of 'a whichTree * 'a whichTree;
ou
datatype whichTree = Empty | Leaf of int | Node of whichTree*whichTree;
Mais aucun d'entre eux semblent bon pour moi que dans mon premier cas mon nom de type de données a a 'a dedans et dans mon autre je dis Leaf of int quand je devrais pouvoir spécifier string ou int en utilisant which.
Quelqu'un peut-il me dire ce que le bon répondez-vous ou me fournir de l'aide?
Merci! C'était ce que je cherchais. – user494948