Διαδρομές
/
Haskell
Haskell
/
Ασκήσεις
/
Προσαρμοσμένο σύνολο
Προσαρμοσμένο σύνολο

Προσαρμοσμένο σύνολο

Μέτριο

Οδηγίες

Δημιούργησε έναν προσαρμοσμένο τύπο συνόλου.

Μερικές φορές είναι απαραίτητο να ορίσεις μια προσαρμοσμένη δομή δεδομένων κάποιου τύπου, όπως ένα σύνολο. Σε αυτή την άσκηση θα ορίσεις το δικό σου σύνολο. Το πώς λειτουργεί εσωτερικά δεν έχει σημασία, αρκεί να συμπεριφέρεται σαν σύνολο μοναδικών στοιχείων.

Υποδείξεις

Για να ολοκληρώσεις αυτή την άσκηση, πρέπει να δημιουργήσεις τον τύπο δεδομένων CustomSet, με στιγμιότυπα Eq και Show, και να υλοποιήσεις τις παρακάτω συναρτήσεις:

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

Θα βρεις ήδη έτοιμη μια ψευδοδήλωση δεδομένων και τις υπογραφές τύπων, αλλά σε εσένα απόκειται να ορίσεις τις συναρτήσεις και να δημιουργήσεις έναν ουσιαστικό τύπο δεδομένων, newtype ή συνώνυμο τύπου.

Αν σε ενδιαφέρει να γράψεις μια αποδοτική υλοποίηση αλλά δεν ξέρεις και πολύ από πού να ξεκινήσεις, το καλύτερο εισαγωγικό βιβλίο που ξέρω είναι το "Purely Functional Data Structures" του Chris Okasaki, μια εκδοχή του οποίου μπορείς να διαβάσεις εδώ: https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf

Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα
Haskell Exercism

Έτοιμος να ξεκινήσεις την άσκηση Προσαρμοσμένο σύνολο;

Γράψου στο Exercism για να μάθεις και να κατακτήσεις Haskell με 107 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.