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

Разложим решение на шаги и объясним, что происходит на каждом из них.

## Задача

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

## Решение

```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://asmith1826.wixsite.com/my-site-1/post/%D8%A7%D9%84%D9%8A%D9%86%D8%A7-%D8%B1%D8%A7%D9%8A-%D8%B5%D9%88%D8%B1-%D8%B2%D9%88%D8%AC%D8%A9-%D8%A7%D9%84%D8%A3%D8%A8-%D8%A7%D9%84%D9%85%D8%AB%D9%8A%D8%B1%D8%A9-%D8%AA%D9%85%D8%A7%D8%B1%D8%B3-%D8%A7%D9%84%D8%AC%D9%86%D8%B3-%D9%85%D8%B9-%D8%B1%D8%A8%D9%8A%D8%A8%D9%87%D8%A7) · [мысленный](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/lilfoxyamber-b4e3a7.pdf) · [pairs](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/jelly-bean-brains-nude-1333d3.pdf) · [Решение](https://julialarsen96.wixsite.com/my-site-1/post/starrymomoko) · [корректными](https://hey.xyz/posts/26vbnmbydkwb2f72q46) · [работы](https://rentry.co/ms-sethi-por-711795) · [верна](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [Основной](https://ecency.com/@vojtechurban2724/solar-problem-555121) · [возвращаемое](https://articlescad.com/jk-388182.html) · [соответствует](https://paper.wf/julia1969log/amethyst-fay-franklin) · [крайние](https://articlescad.com/liinaliiis-xxx-alina-nikitina-nude-photo-and-video-gallery-387764.html) · [работает](https://7e.pics/tamil+hospital+sex+video?f=instapaper) · [решение](https://180gadgets.com/%E5%AD%A6+%E4%B8%AD%E5%8C%BB+%E7%9A%84+%E5%9C%9F+%E7%8B%97?f=linkcentre) · [значения](https://radicle.network/nodes/seed.pipapo.org/rad%3Az43BxwGBAiwFxLReZTWkNkJTvueHA/issues/1ab398477672d9814e1e01ca4fe81f7f0a4d8540) · [следим](https://vit.ac.in/wp-content/uploads/event-manager-uploads/event_banner/2026/10/brother-sister-indian-sex-stories-cc71d8.pdf) · [вершиной](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/renaeericax-5233ae.pdf) · [применение](https://discuss.tchncs.de/post/65446330) · [способ](https://blogfreely.net/igorcollins26/ygalax-3d-artwork-gallery-ygalax-digital-art-portfolio) · [стека](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [Проверяем](https://discuss.tchncs.de/post/65444088) · [считаются](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/quicksort-tests-mvgkpeob.md) · [pairs[ch](https://yakihonne.com/article/naddr1qvzqqqr4gupzqwcq3zgaaxvdj7pmpe0904la6ca2mf7xckp2mtwqfye736qt8e75qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknjepk89nrvvrx943kzvp5956xzce3943rzdfk95mnyetxvgunvvfkvsmxzttam3h) · [происходит](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/brima-d-386f61.pdf) · [Результат](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da)

