# Two approaches to bracket sequence validation

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

## Задача

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

## Решение

```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) по памяти в худшем случае.


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

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

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

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

[решениями](https://mariak66.wixsite.com/my-site-1/post/%E3%83%9C%E3%83%BC%E3%82%A4%E3%82%BA-%E3%83%A9%E3%83%96-%E3%82%A8%E3%83%AD-%E6%BC%AB%E7%94%BB) · [механику](https://sway.cloud.microsoft/ay8ppbewP6fZwGDU) · [stack.append(ch](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/lara-rose-twitter-176906.pdf) · [ручной](https://paper.wf/inesnovak75log/vintage-undressing) · [Альтернатива](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/aleksandra-zubko-c54ff1.pdf) · [применение](https://yakihonne.com/article/naddr1qvzqqqr4gupzqjpl635uhtg5af95mekxm4y9cm0s2k4k5th58cgxttvuvn8g5lr3qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknwwtzx43nxvfj95ukvdtp956xyvrx95ungd3595erxepsxymnyvf38q6ns3d8ly0) · [худшем](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-678871.pdf) · [времени](https://collection78335.mataroa.blog/blog/sarem-uysal-ifsa/) · [вместо](https://paper.wf/emmakeller01log/peng-ben-xi-lie) · [скобки](https://writefreely.ethibox.fr/ozbd9454/cute-blue-aesthetic-wallpapers-pastel-blue-phone-and-desktop-backgrounds) · [вершиной](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [Пример](https://news-ctl-posts.hashnode.dev/walking-through-bracket-sequence-validation) · [задача](https://news-ctl-posts.hashnode.dev/exploring-palindrome-check) · [Задача](https://discuss.tchncs.de/post/65441549) · [конце](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/the-battle-bricks-r34-281950.pdf) · [баланс](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [цикла](https://statics.pancake.vn/web-media-264/53/ca/41/06/bd971f782b7400e4d863e30b6f7ce3a67e5c7287b38fbf393e9139e8.pdf) · [кладётся](https://gellaryforum.freeflarum.com/d/28296-28296-novatory-multik-sovetskii-multfilm-o-priklyuceniyax-na-cerdake) · [через](https://paper.wf/sofia1967log/hakan-23cm-adult-photo-gallery) · [stack](https://hey.xyz/posts/8qexjfmcwc3fhe33gn) · [рекурсию](https://news-ctl-posts.hashnode.dev/pitfalls-of-binary-search) · [работает](https://lucasp10.wixsite.com/my-site-1/post/tmkoc-xxx-images-telugu-heroines-nudesex-photos) · [закрывающая](https://gellaryforum.freeflarum.com/d/28102-28102-turk-guzel-porno-turkce-konusmali-amator-sex-videolari) · [способом](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [скобка](https://marieroux757.overblog.fr/2026/10/gals-o-gurk-videos.html) · [ручное](https://kpetrenko8.wixsite.com/my-site-1/post/%D0%BE%D0%B7%D0%BD%D0%B0%D0%BA%D0%B8-%D0%BF%D0%BE%D0%B4%D1%96%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%96-%D1%87%D0%B8%D1%81%D0%B5%D0%BB-%D0%BD%D0%B0-3) · [Полезно](https://tomasbarbosa47.wixsite.com/my-site-1/post/dartzai)

