# Solving and testing anagram checking (part 3525)

Решение без тестов быстро ломается, поэтому добавим к задаче простые проверки.

## Задача

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

## Решение

```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) по памяти.


## Проверка тестами

Хорошая привычка — проверять решение сразу на нескольких примерах, включая крайние случаи.

```python
assert is_valid(True) is not None  # базовая проверка вызова
assert is_valid(False) is not None  # и второй случай
```

Такой минимум уже защищает от случайной ошибки при правках кода.

С добавлением проверок решение становится самодокументируемым — сразу видно, что код делает.

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

[делает](https://yakihonne.com/article/naddr1qvzqqqr4gupzq7m60vw6yz70kh2yp5shq0mlqxgljagrl3n0aqhf7kjdsz5llzwwqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkzef5xu6kve3c94jnwcek956xze3j943rwcnx95mrycenxqurwd3cvdjns5d3kyy) · [решение](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/cherish-ams-model-0d5738.pdf) · [случайной](https://discuss.tchncs.de/post/65440584) · [нескольких](https://portfolio12252.mataroa.blog/blog/yeahmur-ifsa/) · [работы](https://rentry.co/girlyoyobb-828756) · [Хорошая](https://articlescad.com/bokep-cewek-cantik-ngentot-sama-anjing-382586.html) · [Определить](https://discuss.tchncs.de/post/65439669) · [частотой](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/ariaboobie-fe7c76.pdf) · [базовая](https://ecency.com/@jakubkolar5653/kaelee-rene-onlyfans-nude-c0c15c) · [быстро](https://www.sfahba.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/babytanaxo-45aa8c.pdf) · [return](https://frames58416.mataroa.blog/blog/junior-miss-pageant-2000-french-nudist-beauty-contest-5/) · [Проверка](https://portfolio79014.mataroa.blog/blog/kitkato/) · [python](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [сортировки](https://paper.wf/ineshoffmann87log/lilu-julia) · [Сортировка](https://rentry.co/gallery-211397) · [поэтому](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [вызова](https://veronikacosta5.wixsite.com/my-site-1/post/%E6%A1%A5%E6%9C%AC%E9%A6%99%E8%8F%9C) · [Такой](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/videolink-252df3.pdf) · [последовательности](https://oksanan29.wixsite.com/my-site-1/post/illuxxtrandy-shinobu-and-tanjiro-hentai-collection) · [Решение](https://statics.pancake.vn/web-media-264/f1/04/25/34/1c7f82031e70692fd03f4019f0323fa713e4efce45aea891dbd190f8.pdf) · [видно](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [защищает](https://drop.xtrafrancyz.net/selif/bpgfkpngtw.pdf) · [Задача](https://yakihonne.com/article/naddr1qvzqqqr4gupzp8032heuhhhksd6t6tvay8h6k0je23rppyrwjs00y3gsxxd9gfx6qy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkgvehxdjrqvpn94jnjcfn956rydrr94snxwfc94jkyve3vfsnqdp5x9jky4hfrjt) · [привычка](https://romanmiller22.wixsite.com/my-site-1/post/%E5%AE%89%E5%90%89%E6%8B%89%E6%80%80%E7%89%B9-%E9%AB%98%E6%B8%85%E6%97%A0%E7%A0%81-%E6%88%90%E4%BA%BA%E8%A7%86%E9%A2%91%E5%90%88%E9%9B%86-%E5%A4%A7%E5%B0%BA%E5%BA%A6-%E6%80%A7%E6%84%9F%E7%86%9F%E5%A5%B3) · [sorted(b.lower](https://hey.xyz/posts/f4gghscqd61d41y33k) · [отсортированные](https://ecency.com/@tomasruzick4961/wnru621526-391609)

