Формула Кэли
англ. Cayley's formula
Полный граф на n помеченных вершинах имеет ровно n^{n−2} остовных деревьев: два города — одна сеть, четыре — 16, десять — сто миллионов. Доказывает код Прюфера.
Сколько разных сетей можно натянуть на n городов, соединив их без циклов и без изолированных точек? На языке графов: сколько остовных деревьев у полного графа ? Малые случаи прозаичны: для — единственная дорога, для — три «вилки», для — уже 16. Закономерность на глаз не видна, а ответ красив: формула Кэли даёт ровно . Показатель выглядит загадочно — и в этом вся прелесть.
Главная улика — код Прюфера (1918). Каждому дереву на n помеченных вершинах сопоставим последовательность длины n−2 из номеров вершин: найди минимальный лист, запиши номер его соседа, откуси лист — и так, пока не останутся две вершины. Строку можно однозначно развернуть обратно в дерево, а вариантов строки ровно , каждый учтён один раз. Биекция закрыла вопрос подсчёта одним махом — и заодно объяснила странный показатель: дереву остаётся «что сказать» ровно n−2 раза, потому что у дерева всегда есть листья.
Зачем считать деревья. Масштаб: для формула даёт — сто миллионов остовных деревьев, и на этом фоне почти чудом выглядят жадные алгоритмы Прима и Крускала, находящие минимальный остов за секунды, не перебирая и тысячной доли вариантов. Химия: изомеры углеводородов — это непомеченные деревья, и Кэли пришёл к подсчёту деревьев именно от молекул. Олимпиадная практика: через код Прюфера доказывают, например, что в случайном дереве ожидаемое число листьев около . Полный контекст остовов — в уроке деревья и алгоритмы.
Быстрая проверка руками — любимое задание семинаров: перечислите деревья (четыре звезды плюс двенадцать путей), затем возьмите и выписывайте коды Прюфера — строки из цифр 1–5 длины 3, всего . Напомнить, чем дерево отличается от «просто графа», поможет термин дерево, стартовая точка по теме — урок графы: основы, а все формулы графов на одном листе — в шпаргалке по графам и алгоритмам.
Частые вопросы
Почему в показателе именно n−2?
Из-за кода Прюфера: пока вершин больше двух, у дерева есть лист, и каждое удаление листа даёт один символ строки. Останавливаемся на двух вершинах — значит, символов n−2. Дереву «есть что рассказать» о своих внутренних вершинах.
Сколько остовных деревьев у K₂, K₃, K₄?
(одна дорога), (три вилки с разными центрами), (четыре звезды плюс двенадцать путей). Малые случаи — лучшая проверка формулы перед экзаменом.
Применима ли формула Кэли к неполному графу?
Нет: она считает деревья полного графа, использующие все его рёбра. Для произвольного графа G работает матричная теорема Кирхгофа — число остовных деревьев равно любому главному минору матрицы Кирхгофа (степени минус смежности).