Ανιχνευτής Παλίνδρομων - Εργαλείο Άμεσης Επικύρωσης Κειμένου (Δωρεάν)
Ελέγξτε αν το κείμενο διαβάζεται το ίδιο προς τα εμπρός και προς τα πίσω. Δωρεάν ανιχνευτής παλίνδρομων που χειρίζεται κενά, στίξη και πεζά/κεφαλαία. Ιδανικό για συνεντεύξεις προγραμματισμού, λεκτικά παιχνίδια και μάθηση.
Έλεγχος Παλινδρόμου
Παραδείγματα
- "racecar" - Ναι, είναι παλίνδρομο!
- "A man a plan a canal Panama" - Ναι, είναι παλίνδρομο!
- "hello" - Όχι, δεν είναι παλίνδρομο
Τεκμηρίωση
Τι είναι ένας ελεγκτής παλινδρόμων;
Ο ελεγκτής παλινδρόμων είναι ένα εργαλείο που ελέγχει αν ένα κείμενο διαβάζεται το ίδιο από την αρχή προς το τέλος και από το τέλος προς την αρχή. Αγνοεί τα κενά, τα σημεία στίξης και τα κεφαλαία γράμματα, επομένως μια πρόταση όπως "A man, a plan, a canal: Panama" θεωρείται παλίνδρομη, παρόλο που δεν είναι πανομοιότυπη χαρακτήρα προς χαρακτήρα όταν αντιστρέφεται.
Πώς να χρησιμοποιήσετε αυτόν τον ελεγκτή παλινδρόμων
- Πληκτρολογήστε ή επικολλήστε μια λέξη, φράση ή αριθμό στο πεδίο εισαγωγής.
- Το αποτέλεσμα εμφανίζεται αμέσως: "Yes, it's a palindrome!" ή "No, not a palindrome."
- Διαβάστε τη γραμμή "Cleaned text" για να δείτε ακριβώς τι συγκρίθηκε.
- Κάντε κλικ σε ένα από τα παραδείγματα για να το ελέγξετε αμέσως.
- Χρησιμοποιήστε την επιλογή «Reset» για να διαγράψετε την είσοδο και να ξεκινήσετε ξανά.
Ο έλεγχος εκτελείται στο πρόγραμμα περιήγησης. Κανένα κείμενο δεν αποστέλλεται σε διακομιστή.
Πώς λειτουργεί ο ελεγκτής παλινδρόμων
Το εργαλείο λειτουργεί σε δύο βήματα.
Βήμα 1: Καθαρισμός του κειμένου
Πριν από τη σύγκριση, το κείμενο καθαρίζεται:
- Τα τονισμένα γράμματα μετατρέπονται στο αντίστοιχο απλό βασικό γράμμα. Το É γίνεται e και το á γίνεται a.
- Το κείμενο μετατρέπεται σε πεζά γράμματα.
- Αφαιρείται οτιδήποτε δεν είναι γράμμα ή ψηφίο, συμπεριλαμβανομένων των κενών, των κομμάτων, των τελειών και άλλων σημείων στίξης.
Αυτό το βήμα διατηρεί γράμματα από οποιοδήποτε αλφάβητο, όχι μόνο τα 26 γράμματα που χρησιμοποιούνται στα αγγλικά. Τα κείμενα σε κυριλλικό, ελληνικό, εβραϊκό και κινεζικό αλφάβητο καθαρίζονται με τον ίδιο τρόπο, ώστε να εντοπίζονται σωστά και τα παλίνδρομα άλλων γλωσσών.
Βήμα 2: Σύγκριση του κειμένου με την αντίστροφή του
Το καθαρισμένο κείμενο αντιστρέφεται και συγκρίνεται, γράμμα προς γράμμα, με το καθαρισμένο αρχικό κείμενο. Αν κάθε θέση ταιριάζει, το κείμενο είναι παλίνδρομο.
Τύπος παλινδρόμου
Για μια καθαρισμένη συμβολοσειρά S με μήκος n, το κείμενο είναι παλίνδρομο όταν:
S[i] = S[n − 1 − i], για κάθε θέση i από 0 έως n − 1.
Με απλά λόγια: το πρώτο γράμμα πρέπει να ταιριάζει με το τελευταίο, το δεύτερο με το προτελευταίο και ούτω καθεξής προς το μέσο. Ο έλεγχος μιας συμβολοσειράς με αυτόν τον τρόπο απαιτεί χρόνο ανάλογο του μήκους της, επειδή τόσο το βήμα καθαρισμού όσο και το βήμα σύγκρισης εξετάζουν κάθε χαρακτήρα μία φορά.
Λυμένο παράδειγμα
Ας πάρουμε την πρόταση "A man, a plan, a canal: Panama."
- Καθαρίστε την: μετατρέψτε τα γράμματα σε πεζά και αφαιρέστε τα σημεία στίξης και τα κενά. Το αποτέλεσμα είναι
amanaplanacanalpanama. - Αντιστρέψτε το καθαρισμένο κείμενο:
amanaplanacanalpanama. - Συγκρίνετε τις δύο συμβολοσειρές. Ταιριάζουν, επομένως η πρόταση είναι παλίνδρομη.
Το κείμενο με τόνους αντιμετωπίζεται με τον ίδιο τρόπο. Το «Été» (η γαλλική λέξη για το «καλοκαίρι») καθαρίζεται σε ete, επειδή ο τόνος στο É μετατρέπεται σε απλό e. Η αντιστροφή του ete δίνει ξανά ete, επομένως είναι παλίνδρομο. Η ισπανική πρόταση "Dábale arroz a la zorra el abad" καθαρίζεται σε dabalearrozalazorraelabad, η οποία επίσης διαβάζεται το ίδιο αντίστροφα.
Παραδείγματα παλινδρόμων
Λέξεις: racecar, level, radar, civic, kayak, noon, rotor, madam
Φράσεις: "A man, a plan, a canal: Panama", "Was it a car or a cat I saw?", "Never odd or even", "Do geese see God"
Αριθμοί: 12.321, 1001, 45.654
Συνήθεις χρήσεις του ελέγχου παλινδρόμων
- Συνεντεύξεις προγραμματισμού. Ο έλεγχος για παλίνδρομο είναι μια τυπική άσκηση επεξεργασίας συμβολοσειρών. Εξετάζει τον τρόπο με τον οποίο ένας υποψήφιος χειρίζεται οριακές περιπτώσεις, όπως κενή είσοδο, μεμονωμένους χαρακτήρες και συνδυασμό κεφαλαίων και πεζών.
- Επικύρωση φορμών. Ορισμένα συστήματα επισημαίνουν παλίνδρομα ονόματα χρηστών, κωδικούς προϊόντων ή σειριακούς αριθμούς, επειδή αυτά τα μοτίβα είναι ευκολότερο να προβλεφθούν ή μπορεί να προκαλέσουν σύγχυση σε ορισμένους σαρωτές.
- Παιχνίδια λέξεων και γρίφοι. Οι σχεδιαστές σταυρόλεξων και παιχνιδιών λέξεων χρησιμοποιούν παλίνδρομα ως απαντήσεις, επειδή οι παίκτες συχνά βρίσκουν ικανοποιητική την ανακάλυψή τους.
- Διδασκαλία προγραμματισμού. Ο έλεγχος παλινδρόμων είναι μια συνηθισμένη πρώιμη άσκηση, επειδή συνδυάζει τον χειρισμό συμβολοσειρών, τους βρόχους και τη λογική υπό όρους, χωρίς να απαιτεί προηγμένες δομές δεδομένων.
- Μοριακή βιολογία. Μια παλίνδρομη ακολουθία στο DNA διαβάζεται το ίδιο και στις δύο αλυσίδες, όταν καθεμία διαβάζεται προς την ίδια χημική κατεύθυνση. Τα ένζυμα περιορισμού αναγνωρίζουν αυτές τις ακολουθίες και κόβουν το DNA σε εκείνο το σημείο, μια τεχνική που χρησιμοποιείται ευρέως στη γενετική μηχανική.
Σύντομη ιστορία των παλινδρόμων
Τα παλίνδρομα εμφανίζονται σε πολλούς πολιτισμούς και σε πολλούς αιώνες. Το τετράγωνο του Sator, ένα λατινικό τετράγωνο λέξεων που διαβάζεται "SATOR AREPO TENET OPERA ROTAS,", βρέθηκε στην Πομπηία και χρονολογείται πριν από το 79 μ.Χ. Διαβάζεται το ίδιο προς τέσσερις κατευθύνσεις: από αριστερά προς τα δεξιά, από δεξιά προς τα αριστερά, από πάνω προς τα κάτω και από κάτω προς τα πάνω.
Οι συγγραφείς αντιμετωπίζουν τα παλίνδρομα ως λογοτεχνική πρόκληση εδώ και αιώνες. Ο James Joyce επινόησε τη λέξη «tattarrattat» στο μυθιστόρημά του Ulysses για να αναπαραστήσει ένα χτύπημα σε πόρτα. Με 12 γράμματα, αναφέρεται συχνά ως μία από τις μεγαλύτερες μονολεκτικές παλίνδρομες λέξεις στα αγγλικά.
Συχνές ερωτήσεις
Τι είναι ένα παλίνδρομο;
Παλίνδρομο είναι μια λέξη, φράση, αριθμός ή ακολουθία που διαβάζεται το ίδιο από την αρχή προς το τέλος και από το τέλος προς την αρχή, αφού αγνοηθούν τα κενά, τα σημεία στίξης και τα κεφαλαία.
Αγνοεί αυτό το εργαλείο τα κενά και τα σημεία στίξης;
Ναι. Το κείμενο καθαρίζεται πριν από τη σύγκριση, επομένως το "A man, a plan, a canal: Panama" αναγνωρίζεται ως παλίνδρομο, παρόλο που η αρχική πρόταση, με τα κόμματα και την άνω και κάτω τελεία, δεν είναι ίδια όταν αντιστρέφεται.
Χειρίζεται τονισμένα γράμματα και άλλα αλφάβητα;
Ναι. Τα τονισμένα γράμματα μετατρέπονται στο βασικό τους γράμμα, επομένως το é γίνεται e, πριν από τη σύγκριση. Διατηρούνται γράμματα από οποιοδήποτε σύστημα γραφής, όχι μόνο τα 26 γράμματα του αγγλικού αλφαβήτου, οπότε τα ελληνικά, κυριλλικά, εβραϊκά ή κινεζικά κείμενα καθαρίζονται και συγκρίνονται με τον ίδιο τρόπο όπως τα αγγλικά.
Ελέγχονται οι αριθμοί ως παλίνδρομα;
Ναι. Τα ψηφία διατηρούνται κατά τον καθαρισμό, επομένως αριθμητικές συμβολοσειρές όπως 12.321 ή 1001 ελέγχονται με τον ίδιο τρόπο όπως οι λέξεις.
Είναι ένα μεμονωμένο γράμμα παλίνδρομο;
Ναι. Ένας μεμονωμένος χαρακτήρας διαβάζεται εξ ορισμού το ίδιο από την αρχή προς το τέλος και από το τέλος προς την αρχή, επομένως τόσο το «a» όσο και το «I» θεωρούνται παλίνδρομα.
Ποια είναι η διαφορά μεταξύ ενός παλίνδρομου και ενός αναγραμματισμού;
Ένα παλίνδρομο διαβάζεται το ίδιο από την αρχή προς το τέλος και από το τέλος προς την αρχή, όπως το «radar». Ένας αναγραμματισμός αναδιατάσσει τα γράμματα μιας λέξης ή φράσης για να σχηματίσει μια διαφορετική λέξη, όπως οι λέξεις «listen» και «silent». Οι δύο έννοιες δεν σχετίζονται.