Skip to main content

Step-by-step: string reversal (part 556d)

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

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

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

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

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

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

No comments yet. Be the first to comment.

More from this blog