РУҚА
Задания № 8, 27 · ЕГЭ

Дерево

Определение, свойства, формулы и алгоритмы решения задач на соединение вершин
6 мин чтенияСложность: Обновлено 29 сентября 2026

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

Определение дерева

Напомним, что связность графа означает возможность попасть из любой вершины в любую другую, двигаясь по рёбрам. Граф называется связным графом, если между любыми двумя его вершинами существует путь.

D
Дерево

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

Если из дерева удалить любое ребро, граф перестанет быть связным: вершины разделятся на две части. Если добавить к дереву новое ребро между двумя уже существующими вершинами, появится цикл в графе. Поэтому дерево является «точно достаточной» системой соединений: рёбер хватает для связности, но лишних рёбер нет.

T
Равносильные признаки дерева

Для графа с \(n\) вершинами равносильны следующие утверждения: граф связен и не содержит циклов; между любыми двумя вершинами есть единственный простой путь; удаление любого ребра нарушает связность; добавление любого нового ребра создаёт цикл.

ABCDEFG
Пример дерева: 7 вершин и 6 рёбер, циклов нет.

Главное свойство: число рёбер

Количество рёбер дерева однозначно определяется количеством его вершин. Это важнейшая формула для задач, где требуется найти число соединений или проверить, может ли данный граф быть деревом.

\[m=n-1\]1

Здесь \(n\) — число вершин, а \(m\) — число рёбер. Например, дерево из 10 вершин имеет \(10-1=9\) рёбер. Дерево из одной вершины имеет 0 рёбер и тоже считается деревом.

T
Формула дерева

В любом дереве с \(n\) вершинами ровно \(n-1\) рёбер. Если известны число рёбер и то, что граф является деревом, то число вершин равно \(m+1\).

Эту формулу можно получить удалением листьев. Листовая вершина имеет степень 1. Если удалить лист и единственное ребро, инцидентное ему, останется дерево с одной вершиной и одним ребром меньше. Повторяя действие, дойдём до одной вершины. Значит, на каждом шаге число рёбер уменьшается на единицу вместе с числом вершин, поэтому сохраняется равенство \(m=n-1\).

Запомните

Для дерева: вершины на одну больше числа рёбер. Если в условии сказано, что нужно соединить \(n\) объектов без циклов и так, чтобы между любыми двумя был путь, понадобится \(n-1\) соединение.

Проверьте себя

В графе 12 вершин и 11 рёбер. Можно ли сразу утверждать, что это дерево?

Как решать задачи на соединение вершин

Во многих задачах требуется соединить города, компьютеры, станции или пункты так, чтобы из любого пункта можно было добраться в любой другой. Если соединения не должны образовывать циклы, искомая схема является деревом. Поэтому сначала нужно определить, что именно требуется: связность, отсутствие лишних соединений или минимальная стоимость.

  1. Обозначьте число объектов через \(n\).
  2. Проверьте, что все объекты должны быть связаны в одну сеть.
  3. Если циклы запрещены или требуется минимальное число соединений, используйте свойство дерева.
  4. Подставьте \(n\) в формулу \(m=n-1\).
  5. Если даны конкретные рёбра, проверьте связность обходом или подсчётом компонент.
Минимальная сеть

Чтобы связать \(n\) объектов, достаточно \(n-1\) соединения. Меньшее число не обеспечит связность, а любое дополнительное соединение создаст цикл, если до этого была построена связная схема без циклов.

Если в задаче нужно найти минимальную стоимость соединения, одного подсчёта рёбер недостаточно. Нужно выбирать сами рёбра так, чтобы получился остовное дерево исходного графа. Для этого применяют алгоритмы Краскала или Прима; в школьных задачах часто достаточно последовательно выбирать самые дешёвые допустимые рёбра и не создавать цикл.

Разобранный пример

№
Сколько кабелей потребуется?

В офисе 15 компьютеров нужно соединить в одну сеть. Требуется, чтобы между любыми двумя компьютерами существовал путь, но лишних соединений и циклов не было. Сколько кабелей понадобится?

1
Компьютеры считаем вершинами графа, а кабели — рёбрами. Условие требует связный граф без циклов, то есть дерево.
n=15
2
Для дерева число рёбер на единицу меньше числа вершин.
m=n-1
3
Подставляем число компьютеров.
m=15-1=14
4
Следовательно, для построения сети понадобится 14 кабелей.
\(\displaystyle \boxed{m=14}\)

Проверка здравого смысла: если подключать компьютеры по одному к уже построенной сети, первый компьютер образует сеть без кабеля, второй требует 1 кабель, третий — ещё 1, и так далее. Для 15 компьютеров получится 14 подключений.

Деревья, компоненты и обход

Если граф не является связным, он распадается на компоненты связности. Пусть в графе \(n\) вершин и \(k\) компонент, причём каждая компонента является деревом. Тогда общее число рёбер равно сумме чисел рёбер в компонентах.

\[m=n-k\]2

Например, если лес состоит из трёх деревьев и всего содержит 20 вершин, то в нём \(20-3=17\) рёбер. Несвязный граф такого вида называют лесом. Если нужно проверить связность вручную или программно, можно выполнить поиск в ширину: стартуем из одной вершины и смотрим, все ли вершины удалось посетить.

В задачах с таблицей смежности полезно помнить: если граф — дерево, сумма степеней всех вершин равна \(2m=2(n-1)\). Это следует из того, что каждое ребро имеет два конца.

\[\sum\limits_{v\in V}\deg(v)=2m=2(n-1)\]3
!
Частые ошибки

Ошибка 1: считать граф деревом только по формуле \(m=n-1\). Нужно убедиться, что граф связен. Ошибка 2: путать число вершин и число рёбер: в дереве рёбер меньше на один. Ошибка 3: считать любое соединение минимальным. Минимальная сеть должна сохранять связность; нельзя удалить ребро, если из-за этого сеть распадётся. Ошибка 4: добавлять ребро между двумя вершинами дерева без проверки — такое добавление обязательно создаёт цикл.

Q
Быстрый тест по теме

Быстрая проверка

~ 2 мин4 вопроса
Вопрос 1 / 4
Вопрос 1 из 4 · формула
Сколько рёбер в дереве с 8 вершинами?
Главное за минуту

Главное

  • Дерево — связный граф без циклов; между любыми двумя вершинами есть ровно один простой путь.
  • В дереве с \(n\) вершинами ровно \(n-1\) рёбер.
  • Удаление любого ребра разрушает связность, а добавление любого нового ребра создаёт цикл.
  • Для леса с \(n\) вершинами и \(k\) компонентами формула имеет вид \(m=n-k\).
  • Задачи на минимальное соединение решаются построением дерева, а при заданных весах — поиском остовного дерева.