Υπολόγισε την απόσταση Hamming ανάμεσα σε δύο κλώνους DNA.
Το σώμα σου αποτελείται από κύτταρα που περιέχουν DNA. Αυτά τα κύτταρα φθείρονται τακτικά και χρειάζεται να αντικατασταθούν, κάτι που το πετυχαίνουν διαιρούμενα σε θυγατρικά κύτταρα. Στην πραγματικότητα, το μέσο ανθρώπινο σώμα βιώνει περίπου 10 τετράκις εκατομμύρια κυτταρικές διαιρέσεις στη διάρκεια της ζωής του!
Όταν τα κύτταρα διαιρούνται, το DNA τους αντιγράφεται κι αυτό. Μερικές φορές, κατά τη διάρκεια αυτής της διαδικασίας, γίνονται λάθη και μεμονωμένα κομμάτια DNA κωδικοποιούνται με λανθασμένες πληροφορίες. Αν συγκρίνουμε δύο κλώνους DNA και μετρήσουμε τις διαφορές μεταξύ τους, μπορούμε να δούμε πόσα λάθη συνέβησαν. Αυτό είναι γνωστό ως "απόσταση Hamming".
Διαβάζουμε το DNA χρησιμοποιώντας τα γράμματα C, A, G και T. Δύο κλώνοι μπορεί να μοιάζουν έτσι:
GAGCCTACTAACGGGAT
CATCGTAATGACGGCCT
^ ^ ^ ^ ^ ^^
Έχουν 7 διαφορές, άρα η απόσταση Hamming είναι 7.
Η απόσταση Hamming είναι χρήσιμη για πολλά πράγματα στην επιστήμη, όχι μόνο στη βιολογία, οπότε είναι ωραίο να την ξέρεις :)
Η απόσταση Hamming ορίζεται μόνο για ακολουθίες ίσου μήκους, οπότε μια προσπάθεια να υπολογιστεί ανάμεσα σε ακολουθίες διαφορετικού μήκους δεν θα πρέπει να λειτουργεί.
Γράψου στο Exercism για να μάθεις και να κατακτήσεις Haskell με 107 ασκήσεις και πραγματική καθοδήγηση από ανθρώπους, όλα δωρεάν.