# Step-by-step: bracket sequence validation (part ea59)

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

## Задача

Проверить, правильно ли расставлены скобки в строке из символов `()[]{}`.

## Решение

```python
def is_balanced(s: str) -> bool:
    pairs = {')': '(', ']': '[', '}': '{'}
    stack = []
    for ch in s:
        if ch in '([{':
            stack.append(ch)
        elif ch in pairs:
            if not stack or stack.pop() != pairs[ch]:
                return False
    return not stack


print(is_balanced("([]{})") )
```

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

Это классическое применение стека: открывающая скобка кладётся наверх, закрывающая сверяется с вершиной. Если в конце стек пуст — последовательность верна.

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

```text
True
```

## Сложность

O(n) по времени, O(n) по памяти в худшем случае.


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

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

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

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

[работа](https://montage61625.mataroa.blog/blog/via-inka-porn/) · [какие](https://sway.cloud.microsoft/49K2VGIa5uc0bWXx) · [мысленный](https://discuss.tchncs.de/post/65439896) · [Именно](https://rentry.co/ra2z7g53) · [происходит](https://montage30804.mataroa.blog/blog/9b7-fa-30e/) · [конце](https://privatebin.devol.it/?827944d8ec94aa4c#5WSo4mtGtNCtEQVHWaK7fQL2pGJmPyRovN1ocdk5ukkP) · [случаи](https://statics.pancake.vn/web-media-264/ee/94/6e/4a/f0e9257559c15185dc90bc601a43d5932265157245fb085b6bd1705d.pdf) · [научиться](https://hey.xyz/posts/1qn9d18vw99a9mgcg36) · [Решение](https://phansen59.wixsite.com/my-site-1/post/jaileen) · [False](https://discuss.tchncs.de/post/65441211) · [самый](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/aikokimxo-nude-919426.pdf) · [расставлены](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [считаются](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [Пример](https://articlescad.com/vanja-komatina-porn-386463.html) · [символов](https://nikolaynovak73.wixsite.com/my-site-1/post/monsters-inc-gay-porn) · [Медленный](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [случае](https://paper.wf/ineskeller04log/nnonono) · [наверх](https://yakihonne.com/article/naddr1qvzqqqr4gupzp7ae4xxl8f3yj9rdpn4s2nz6u23tmteg3m9h7yyfx6j6r20544d7qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkyvtyxfjr2vnx943kvv3j956xvenr943r2vfj95urywpnvv6nqcfsxf3xxdpn6s2) · [способ](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/brackets-dva-sposoba-mvfp5ena.md) · [понять](https://gall.dcinside.com/mgallery/board/view/?id=nmixxreality&no=3555) · [приходит](https://rentry.co/ms-sethi-doggy-485751) · [чужой](https://artofhosting.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/allie-gaber-nudes-b4f012.pdf)

