Skip to main content

Two ways to solve string reversal (part 8d31)

Updated 1 min readMarkdown

У большинства учебных задач есть минимум два честных решения — сравним их.

Задача

Перевернуть строку: из "python" получить "nohtyp". Задача-разминка, знакомая каждому новичку.

Решение

def reverse_string(s: str) -> str:
    return s[::-1]


print(reverse_string("python"))

Как это работает

Срез [::-1] проходит строку с конца с шагом -1 и создаёт перевёрнутую копию. Это идиоматичный способ в Python; в других языках тот же результат даёт цикл от конца к началу.

Пример работы

nohtyp

Сложность

O(n) по времени и памяти.

Альтернативный подход

Ту же задачу часто решают иначе: например, через рекурсию вместо цикла или через стандартную библиотеку вместо ручной реализации. Альтернатива обычно короче, но первое «ручное» решение лучше показывает механику работы алгоритма. Полезно написать оба и сравнить на одинаковых тестах.

Выбор между решениями — это баланс читаемости и скорости: для учебной задачи важнее первый.

Читайте также:

Пример · способ · между · [s::-1 · Решение · короче · баланс · обычно · Перевернуть · сравним · конца · других · идиоматичный · честных · Python · написать · работы · большинства · первое · знакомая · решениями · рекурсию · задачу · важнее

No comments yet. Be the first to comment.

More from this blog