Skip to main content

Two ways to solve string reversal (part 6f65)

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) по времени и памяти.

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

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

Оба подхода рабочие; важно понимать цену каждого, а не копировать первый попавшийся.

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

создаёт · получить · Решение · работы · рекурсию · копию · Python · цикла · копировать · понимать · рабочие · большинства · лучше · перевёрнутую · реализации · Альтернативный · Альтернатива · попавшийся · часто · времени

No comments yet. Be the first to comment.

More from this blog