Пишем решение с тестами: проверка анаграмм
Разберём решение и сразу накроем его тестами — это хороший стиль работы с кодом.
Задача
Определить, являются ли две строки анаграммами: состоят из одних и тех же букв с одинаковой частотой.
Решение
def are_anagrams(a: str, b: str) -> bool:
return sorted(a.lower()) == sorted(b.lower())
print(are_anagrams("listen", "silent"))
Как это работает
Анаграммы дают одинаковые отсортированные последовательности букв. Сортировка — простое и наглядное решение; словарь частот дал бы ту же проверку без сортировки.
Пример работы
True
Сложность
O(n log n) из-за сортировки, O(n) по памяти.
Проверка тестами
Хорошая привычка — проверять решение сразу на нескольких примерах, включая крайние случаи.
assert is_valid(True) is not None # базовая проверка вызова
assert is_valid(False) is not None # и второй случай
Такой минимум уже защищает от случайной ошибки при правках кода.
Тесты вида assert удобны для учебных задач: они короткие, наглядные и не требуют фреймворков.
Related:
- nikutsuki
- silkc 059
- 2018 Teen Amateur of the Year 18auditions.com
- norissa valdez leckte onlyfans
- Медленно и подробно: решето Эратосфена
- Kawahagitei Hentai Porn Gallery – Free Sex Art and Comics
- Пошаговый разбор: проверка палиндрома
- Изучаем задачу: бинарный поиск
- Пошаговый разбор: сортировка пузырьком
- Проверяем решение тестами: проверка числа на простоту
- almira onlyfans
- голые актрисы сериалов
- fridaynightfuckin
- Медленно и подробно: шифр Цезаря
- 坎贝奇 av
- Nini Divine Face: Sexy Photos of the French Amateur PAWG
- Пошаговый разбор: подсчёт частот слов
- Silk 071 - Deep Desire 2 | Silk Route | Ira Raman Adult Video
- anoanochan
- Два способа решения: сортировка слиянием
- https://paper.wf/claraweber70log/meyra-lllaaviinyaaa-1-fp