Не «прочитай определение», а «увидь, что он делает». Каждый алгоритм — интерактивная визуализация, пошаговый разбор и исходный код с подсветкой активной строки.
Словарь фраз растёт на ходу; словарь не хранится — decoder строит его сам.
z[i] — сколько символов суффикса i совпадает с префиксом. Один массив — поиск, повторы, сжатие.
Те же буквы — то же слово: частоты символов решают за один проход.
Много образцов одним проходом: автомат из Trie + fail-ссылок.
Сравниваем справа налево, сдвигаем по таблице последнего символа — часто быстрее длины текста.
Префикс-функция запоминает, где образец совпадает сам с собой, — текст сканируется без откатов.
Частые символы — короткие коды: оптимальное префиксное сжатие.
Повторы сжимаются в «буква + счёт»: AAAABBB → A4B3.
Все палиндромные радиусы за один проход — зеркала внутри уже найденного.
Самая длинная цепочка символов, встречающаяся в обоих словах в том же порядке.
Прикладываем образец к каждой позиции и сравниваем буквы — честный O(n·m).
Скользящий хеш: окно бежит по тексту, числа сравниваются за O(1).
Минимальное число вставок/удалений/замен, чтобы превратить одно слово в другое.