# Understanding quicksort (part d210)

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

## Задача

Реализовать быструю сортировку — один из самых известных алгоритмов «разделяй и властвуй».

## Решение

```python
def quicksort(arr: list[int]) -> list[int]:
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quicksort(left) + middle + quicksort(right)


print(quicksort([3, 6, 8, 10, 1, 2, 1]))
```

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

Выбирается опорный элемент, массив делится на три части (меньше, равно, больше), затем части сортируются рекурсивно и склеиваются.

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

```text
[1, 1, 2, 3, 6, 8, 10]
```

## Сложность

O(n log n) в среднем, O(n²) в худшем случае.


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

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

[quicksort(arr](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/anal-arabs-0d9b92.pdf) · [учебнике](https://yakihonne.com/article/naddr1qvzqqqr4gupzqdz77dnknwesqfwezg906uaq4xvrqzevlq4ktdeufxetpfucgf6aqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknjvnrvdjxzve395enjcee956r2cfk94snxenp95mkxdtxvy6rserrxuux26a9zaz) · [экспериментов](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/czechstreets-horny-pe-teacher-6c9bbc.pdf) · [быструю](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-608b37.pdf) · [случае](https://jaflysilve.freeflarum.com/d/2837-2837-enrique-garay-desnudo-fotos-y-videos-del-comentarista) · [встречается](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/jules-ari-blowjob-f6d8f3.pdf) · [Сложность](https://paritet-tpk.com.ua/%D0%B7%D0%B0%D0%BF%D1%87%D0%B0%D1%81%D1%82%D0%B8+%D1%81%D0%BF%D0%B5%D1%86%D1%82%D0%B5%D1%85%D0%BD%D0%B8%D0%BA%D0%B0?f=instapaper) · [работы](https://hey.xyz/posts/20pmnzsk61f1sayfwrr) · [Реализовать](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/mallu-nude-d8db0d.pdf) · [Решение](https://kappa.lol/iepdjw) · [меньше](https://yakihonne.com/article/naddr1qvzqqqr4gupzqs4t4unwuqmqrl973m4elstcvypvyqpdddl60k5srx6pqyw3ew7kqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkzdnrvsmkxcnz95cryvtr956ryefc95urvep495cxvwrzxymk2cfex9snyfw70p9) · [Пример](https://jaflysilve.freeflarum.com/d/2865-2865-solaraeesther-solange-nude-onlyfans-leaks-photos-and-videos) · [худшем](https://cclm.tw/%D8%A7%D9%81%D9%84%D8%A7%D9%85+%D8%B3%D9%83%D8%B3+%D8%B9%D8%A7%D8%A6%D9%84%D9%8A%D9%87?f=linkcentre) · [удобно](https://drop.xtrafrancyz.net/selif/aecggy77iu.pdf) · [разделяй](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [элемент](https://katerinac2.wixsite.com/my-site-1/post/%D8%B3%D8%B9%D9%88%D8%AF%D9%8A%D9%87-%D8%AA%D9%85%D8%B5-%D8%B2%D8%A8) · [делится](https://jaflysilve.freeflarum.com/d/2871-2871-where-to-find-hot-gay-furry-porn-comics-gallery-guide) · [arr[len(arr](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [поведением](https://privatebin.devol.it/?a108d2f471a82cb8#9gtkQ5Yr46zMhKT2bFHgHv5qbwoPrRQdVGyFQvtpNU42) · [return](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [right](https://yakihonne.com/article/naddr1qvzqqqr4gupzqkfjr2a3w7prepyff4vz43lv8c4t3a72gfgxs9h5qtddudn4dvpxqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkgcfsxesnqwfe956rvdmp956x2vf394snwepj95mrzdp4vejrsefkv9nxx8zwnr8)

