Проверка на Палиндром - Инструмент за Моментна Текстова Валидация (Безплатен)
Проверете дали текстът се чете еднакво отпред и отзад. Безплатен детектор на палиндроми, който обработва интервали, пунктуация и регистър. Перфектен за интервюта за програмиране, словесни игри и обучение.
Проверка за палиндром
Примери
- "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
Обичайни приложения на проверката за палиндроми
- Интервюта за програмисти. Проверката за палиндром е стандартно упражнение за обработка на низове. Тя проверява как кандидатът се справя с особени случаи като празен вход, единични знаци и смесено изписване с главни и малки букви.
- Проверка на формуляри. Някои системи маркират палиндромни потребителски имена, продуктови кодове или серийни номера, тъй като тези шаблони са по-лесни за отгатване или могат да объркат определени скенери.
- Игри с думи и пъзели. Създателите на кръстословици и игри с думи използват палиндроми като отговори, тъй като играчите често намират откриването им за приятно.
- Преподаване на програмиране. Проверката за палиндроми е често срещано начално упражнение, защото съчетава обработка на низове, цикли и условна логика, без да изисква сложни структури от данни.
- Молекулярна биология. Палиндромна последователност в ДНК се чете по един и същ начин и по двете вериги, когато всяка се прочете в една и съща химична посока. Рестрикционните ензими разпознават тези последователности и разрязват ДНК там — техника, използвана широко в генното инженерство.
Кратка история на палиндромите
Палиндроми се срещат в много култури и през различни векове. Квадратът на Сатор, латински словесен квадрат "SATOR AREPO TENET OPERA ROTAS,", е открит в Помпей и датира от преди 79 г. сл. Хр. Той се чете по един и същ начин в четири посоки: отляво надясно, отдясно наляво, отгоре надолу и отдолу нагоре.
В продължение на векове писателите са възприемали палиндромите като литературно предизвикателство. Джеймс Джойс въвежда думата „tattarrattat“ в романа си Одисей, за да изобрази почукване по врата. С 12 букви той често се посочва като един от най-дългите еднословни палиндроми в английския език.
Често задавани въпроси
Какво е палиндром?
Палиндромът е дума, фраза, число или последователност, която се чете по един и същ начин отпред назад и отзад напред, след като интервалите, препинателните знаци и главните букви бъдат пренебрегнати.
Пренебрегва ли този инструмент интервалите и препинателните знаци?
Да. Текстът се почиства преди сравнението, така че "A man, a plan, a canal: Panama" се разпознава като палиндром, въпреки че необработеното изречение със своите запетаи и двоеточие не е идентично при обръщане.
Обработва ли буквите с диакритични знаци и други азбуки?
Да. Буквите с диакритични знаци се свеждат до основната си буква, така че é става e, преди сравнението. Запазват се буквите от всяка писменост, а не само 26-те букви на английската азбука, така че текстовете на гръцки, кирилица, иврит или китайски се почистват и сравняват по същия начин като текстовете на английски.
Проверяват ли се числата като палиндроми?
Да. Цифрите се запазват при почистването, така че числови низове като 12 321 или 1001 се проверяват по същия начин като думите.
Една буква палиндром ли е?
Да. Един знак по определение се чете по един и същ начин отпред назад и отзад напред, така че и „a“, и „I“ се считат за палиндроми.
Каква е разликата между палиндром и анаграма?
Палиндромът се чете по един и същ начин отпред назад и отзад напред, например „radar“. При анаграмата буквите на една дума или фраза се пренареждат, за да се образува друга дума, например „listen“ и „silent“. Двете понятия не са свързани.