+7 (495) 147-04-32
Главная
/
Блог
/
Ищем палиндромы: задача с собеседования

Ищем палиндромы: задача с собеседования

Семён Евёлкин
Семён Евёлкин
Backend разработчик
Ищем палиндромы: задача с собеседования

Палиндром — это число, буквосочетание, слово или текст, одинаково читающееся в обоих направлениях.

Например: казак, потоп, дед

Часто на собеседованиях на этапе лайвкодинга просят написать простенький метод для поиска слов - палиндромов.

Вот пример такого метода:

def palindrome(*, a: str) -> bool:
    return a == a[::-1]

Пример использования:

>>> palindrome(a="коза")
>>> False
>>> palindrome(a="дед")
>>> True

В Python, выражение a[::-1] используется для получения обратной копии списка или строки. Это слайсинг-синтаксис, где:

  • a —  список или строка, к которой применяется слайсинг.

  • : синтаксис слайсинга (оставляем начало и конец пустыми, что означает, что берется вся строка или список).

  • -1 —  шаг (если шаг отрицательный, то слайсинг идет в обратном порядке).

a[::-1] создаёт новую строку или список, содержащие те же элементы, что и оригинал, но в обратном порядке.

Есть еще один способ решения задачи:

def palindrome(*, a: str) -> bool:
    for i in range(len(a) // 2):
    	if x[i] != x[-i]:
            return False
    return True
Суть заключается в том, чтобы запустить цикл до половины слова и проверять с конца буквы срезом x[i] != x[-i]

Поделиться

Обсудить проект с командой LighTech

Забронировать встречу

Примеры реализации проектов

Обсудить проект
Имя
Связаться
Сообщение
Прикрепить файл +
Запрос на получение файлов
Имя
Отправить файлы
Сообщение
Спасибо!
Ваша заявка отправлена
После обработки наш менеджер свяжется с вами