# Common mistakes in bracket sequence validation (part 3ff7)

Разберём решение и подводные камни — их обычно не видно в готовом коде из учебника.

## Задача

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

## Решение

```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. **Не обрабатывать крайние случаи.** Пустой ввод, ноль, отрицательные числа — именно там решение чаще всего ломается.
2. **Смешивать типы данных.** Строки и числа ведут себя по-разному; неявное приведение типов — источник неочевидных багов.
3. **Писать код без проверки на маленьких примерах.** Прогоните решение вручную на 2-3 значениях, прежде чем считать задачу решённой.

Заметив такую ошибку в чужом коде, вы уже мыслите как ревьюер.

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

[неочевидных](https://tsdm.in/%E2%9D%A4liseli+t%C3%BCrk+if%C5%9Fa?f=linkcentre) · [чужом](https://jaflysilve.freeflarum.com/d/4700-4700-bea-brite-bbw-milf-pornstar-photos-videos) · [скобка](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-abf9ff.pdf) · [багов](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/word-count-oshibki-mvgiwggb.md) · [готовом](https://yakihonne.com/article/naddr1qvzqqqr4gupzq2zxm533zu0c5ctef8s505t76hu82z8fxy5djcnyjzlk8yn06l26qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkgwrrvcmkyvr9943rgvn9956rwefc943rwce494snxcnyxsexve34x5cnxpuzzls) · [False](https://ecency.com/@jirikral2369/mila-secret-stars-133c84) · [примерах](https://sway.cloud.microsoft/qymU51pj9tEdji0W) · [прежде](https://sway.cloud.microsoft/GMuFQ6tYjenjBW2Z) · [решённой](https://www.sfahba.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/yang-lagi-rame-ceweknya-cakep-banget-eps-7ec842.pdf) · [Проверить](https://news-ctl-posts.hashnode.dev/walking-through-word-frequency-counting-part-0443) · [скобки](https://news-ctl-posts.hashnode.dev/step-by-step-removing-duplicates-from-a-list-part-1239) · [маленьких](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/10/araina-nespiak-68ba08.pdf) · [времени](https://carmenacedo.com/mucize+u%C4%9Fur+b%C3%B6ce%C4%9Fi+ile+kara+kedi+sex?f=linkcentre) · [неявное](https://ecency.com/@filippospis5169/post-b1fe9e) · [проверки](https://radicle.network/nodes/index.radicle.garden/rad%3Az42jpopJGtkSHVtJYw1p9X4mGksFr/issues/448134a8e64d827262931ad822f9ef52482f95c6) · [такую](https://yakihonne.com/article/naddr1qvzqqqr4gupzpaqkm5e0fnvaft7vvy565vckd7eyw7trhcx2qzt82kgllqvzcd4jqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkyefsxpnr2dtp95ersdeh956r2cfj94snsd3n95mnjcnyxgenjdp3xdskguwuqt8) · [памяти](https://blogfreely.net/igorcollins26/eksekseks-hai-eksekseks-viiddiyo-aur-ecddii-seksii-philmen) · [Частые](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [видно](https://discuss.tchncs.de/post/65442478) · [stack](https://www.sfahba.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/x-76e8ae.pdf) · [работы](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [Писать](https://gal40220.carrd.co/) · [мыслите](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [случае](https://privatebin.devol.it/?7712514e1eac09b2#7LUTzDFpVzfxNxbNzWfVbduiu82GrhFnVg8jniqFTiG3) · [сверяется](https://kappa.lol/C7u3MA)

