High Guys,Aide pour déclarer le nombre variable d'arguments
Je dois définir un type de données polymorphique pour une arborescence pouvant comporter plusieurs nœuds. Chaque noeud peut avoir n'importe quel nombre d'enfants et un vlaue. Ce type aura toujours au moins un noeud. Je suis nouveau dans Haskell alors je demande comment puis-je déclarer le nœud pour avoir un nombre variable d'arguments.
C'est ce que j'ai maintenant. C'est un arbre qui peut avoir un noeud ou un noeud avec une valeur (a) et deux arbres enfants. Au lieu de deux enfants d'arbre, je veux qu'ils soient un nombre quelconque d'enfants d'arbres. (Analoog comme nombre variable d'arguments java "arg ...")
data Tree a = Node a | Node a (Tree a) (Tree a) deriving (Show)
Merci pour avoir votre aide
EDIT
Une petite question ::: Comment puis-je déclarer ce nœud avec arguments variables dans une fonctions Paramètre (en-tête/signature). Je dois implémenter une fonction appelée
"contient" qui va vérifier si un nœud contient un élément spécifique.
contains :: Tree a -> b -> Bool
contains (Node val [(tree)]) = ......
La deuxième ligne est-elle correcte?
Merci beaucoup pour votre réponse rapide – kap
J'ai mis à jour S'il vous plaît la question principale. Pouvez-vous m'aider à résoudre ce problème? Merci. – kap
Merci encore pour votre réponse. Pouvez-vous s'il vous plaît expliquer le "tout" et le "\ t" pour moi. Je comprends bien la fonction de la carte mais le "tout" et "\ t". parties je ne les comprends pas. Merci – kap