Skip to main content

Step-by-step: string reversal

Updated 2 min readMarkdown

Медленный разбор помогает понять код, а не просто скопировать его.

Задача

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

Решение

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


print(reverse_string("python"))

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

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

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

nohtyp

Сложность

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

Разбор по шагам

  1. Шаг 1. Входные данные. Проверяем, что приходит в функцию, и какие значения считаются корректными.
  2. Шаг 2. Основной цикл. Именно здесь происходит вся работа; следим за изменениями переменных на каждой итерации.
  3. Шаг 3. Результат. Убеждаемся, что возвращаемое значение соответствует условию задачи, включая крайние случаи.

Когда каждый шаг понятен, доработка решения перестаёт быть лотереей.

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

Убеждаемся · каждый · Когда · [s::-1 · значения · лотереей · Перевернуть · python · времени · получить · return · знакомая · Задача-разминка · доработка · соответствует · переменных · просто · Пример · понять · работы · условию · включая · копию · перестаёт · значение · шагам · памяти · происходит · изменениями · началу

No comments yet. Be the first to comment.

More from this blog