# Step-by-step: anagram checking

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

## Задача

Определить, являются ли две строки анаграммами: состоят из одних и тех же букв с одинаковой частотой.

## Решение

```python
def are_anagrams(a: str, b: str) -> bool:
    return sorted(a.lower()) == sorted(b.lower())


print(are_anagrams("listen", "silent"))
```

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

Анаграммы дают одинаковые отсортированные последовательности букв. Сортировка — простое и наглядное решение; словарь частот дал бы ту же проверку без сортировки.

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

```text
True
```

## Сложность

O(n log n) из-за сортировки, O(n) по памяти.


## Разбор по шагам

1. **Шаг 1. Входные данные.** Проверяем, что приходит в функцию, и какие значения считаются корректными.
2. **Шаг 2. Основной цикл.** Именно здесь происходит вся работа; следим за изменениями переменных на каждой итерации.
3. **Шаг 3. Результат.** Убеждаемся, что возвращаемое значение соответствует условию задачи, включая крайние случаи.

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

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

[Читая](https://paste2.org/PkPdhm4n) · [крайние](https://rentry.org/gallery-990303) · [из-за](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/word-count-oshibki-mw6v7fo2.md) · [включая](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/brackets-dva-sposoba-mw6owkmo.md) · [silent](https://ink.synkosmos.org/ozd1c055/hot-teen-gets-fucked-by-her-boyfriend) · [здесь](https://dev.to/devnote2319/logging-pipeline-runs-without-noise-jxhlk-kbj) · [итерации](https://mycommunitycalendars.com/wp-content/uploads/event-manager-uploads/event_banner/2026/11/event-1ad3b6.pdf) · [являются](https://dev.to/devnote2319/account-pools-for-multi-platform-posting-ljc1x-2dpe) · [одних](https://dev.to/devnote2319/keeping-link-blocks-stable-across-platforms-u4eln-217b) · [одинаковой](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/event-08a63a.pdf) · [функцию](https://dev.to/devnote2319/idempotent-publishing-jobs-9r51p-7mk) · [проверку](https://dev.to/devnote2319/idempotent-publishing-jobs-oujtx-5dao) · [анаграммами](https://blogfreely.net/nataliarussell2/ciplak-salvarli-koylu-kizlari) · [частот](https://worknotesx4zb41.notepin.co/reverse-string-shagi) · [способ](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/event-6e5abe.pdf) · [Разложим](https://statics.pancake.vn/web-media-264/f6/f9/a5/0c/23b9049f0d1dc3ca7d39524aab95701579c2aa589c53741bc22c43d0.pdf) · [python](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/3-c34cde.pdf) · [Именно](https://dev.to/devnote2319/logging-pipeline-runs-without-noise-qyha1-2c40) · [sorted(b.lower](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/camila-araujo-videos-7ebf6d.pdf) · [строки](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/11/miley-cyrus-naked-uncensored-2ea1f6.pdf) · [Результат](https://yakihonne.com/article/naddr1qvzqqqr4gupzpypkcshemfg0y3z4a2xspmtn6awpve63gjf0tftkef606cv95vh7qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknjvry8q6ngvry95crvwrr956xxvmx95urgde594jnqd3cxccnxdpkxpnrqx3xqgm) · [чужой](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/11/tante-vs-bocah-sd-bandung-229a0c.pdf) · [изменениями](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/11/prank-ojol-live-7d7605.pdf) · [решение](https://dev.to/devnote2319/account-pools-for-multi-platform-posting-168el-1d7i) · [Сортировка](https://loc.edu/wp-content/uploads/event-manager-uploads/event_banner/2026/11/durdona-qurbonova-13c894.pdf) · [сортировки](https://paste2.org/8mbsGvy1)

