# Common mistakes in bubble sort (part e451)

Каждая учебная задача таит пару-тройку грабель; вот они.

## Задача

Отсортировать список чисел по возрастанию простейшим алгоритмом — сортировкой пузырьком.

## Решение

```python
def bubble_sort(arr: list[int]) -> list[int]:
    a = arr[:]
    n = len(a)
    for i in range(n):
        for j in range(n - 1 - i):
            if a[j] > a[j + 1]:
                a[j], a[j + 1] = a[j + 1], a[j]
    return a


print(bubble_sort([5, 1, 4, 2, 8]))
```

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

На каждом проходе самое большое из оставшихся элементов «всплывает» в конец. Внутренний цикл сокращается на `i`, ведь хвост уже отсортирован.

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

```text
[1, 2, 4, 5, 8]
```

## Сложность

O(n²) по времени, O(1) по памяти (без учёта копии).


## Частые ошибки

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

Если решение заработало с первого раза — всё равно сверьтесь со списком ошибок: половина багов рождается при доработках.

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

[учёта](https://www.sfahba.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-98edba.pdf) · [python](https://blogfreely.net/igorcollins26/skachat-torrent-serial-mosgaz) · [сокращается](https://rentry.co/s3n9yso4) · [пару-тройку](https://annalaurent761.overblog.fr/2026/10/18.html) · [по-разному](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/boobpres-50e2b9.pdf) · [типов](https://blogfreely.net/catherine-vasilyev70/shui-dao-jin-shi-fan-hao) · [Пример](https://blogfreely.net/catherine-vasilyev70/ruby-de-rossi-nude-exclusive-photo-gallery-and-leaks) · [список](https://www.sfahba.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/nanacute-561199.pdf) · [len(a](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/bhai-gay-sex-video-34b3ca.pdf) · [ошибки](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/bericbone-c7bc18.pdf) · [работы](https://rentry.co/indian-bollywood-xxx-video-627498) · [сортировкой](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [самое](https://news-ctl-posts.hashnode.dev/pitfalls-of-merge-sort-part-0dd3) · [рождается](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/binary-search-oshibki-mvdgvxzy.md) · [ломается](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/sieve-razbor-mvdp8thr.md) · [ошибок](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [range(n](https://stills63833.mataroa.blog/blog/r34-tv-woman-rule-34-hentai-gallery-with-adult-art-and-xxx-pics/) · [багов](https://yakihonne.com/article/naddr1qvzqqqr4gupzphq9hypqrevsaketfzejmtcq4tjsyzgs0t602pm3hjgk4qyc3s04qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkxctrvcukge35943rzvec956xxdes94snsvp495cnswtzv9jx2c3c8qurqs5nyrs) · [Прогоните](https://news-ctl-posts.hashnode.dev/two-approaches-to-binary-search-part-b153) · [вручную](https://ecency.com/@vojtechurban2724/henniwd-nude-photos-and-porn-videos-norwegian-babe-shower-b41742) · [пузырьком](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [Писать](https://radicle.network/nodes/index.radicle.garden/rad%3Az2Tt6484ryH4kj6CNPAiDQMoTQVtG/issues/eb865ba19b6cffd891c969c62eb4dc6ad0076e52) · [Смешивать](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/paige-bueckers-sextape-leak-7141d5.pdf) · [Задача](https://infonews.ca/events/submit-event/)

