Parcours
/
Haskell
Haskell
/
Exercices
/
Ensemble personnalisé
Ensemble personnalisé

Ensemble personnalisé

Moyen

Instructions

Il est parfois nécessaire de définir une structure de données personnalisée, comme un ensemble. Dans cet exercice, tu vas définir ton propre ensemble. Son fonctionnement interne n'a pas d'importance, tant qu'il se comporte comme un ensemble d'éléments uniques.

Indices

Pour terminer cet exercice, tu dois créer le type de données CustomSet, avec les instances Eq et Show, et implémenter les fonctions suivantes :

  • delete
  • difference
  • empty
  • fromList
  • insert
  • intersection
  • isDisjointFrom
  • isSubsetOf
  • member
  • null
  • size
  • toList
  • union

Une déclaration de données factice et des signatures de types sont déjà en place, mais c'est à toi de définir les fonctions et de créer un type de données, un newtype ou un synonyme de type qui a du sens.

Si tu veux écrire une implémentation efficace mais que tu ne sais pas trop par où commencer, le meilleur ouvrage d'introduction que je connaisse est « Purely Functional Data Structures » de Chris Okasaki, dont tu peux lire une version ici : https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf

Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
Haskell Exercism

Prêt à commencer Ensemble personnalisé ?

Inscris-toi sur Exercism pour apprendre et maîtriser Haskell avec 107 exercices, et un vrai mentorat humain, le tout gratuitement.