Коды Прюфера — различия между версиями
(→Коды Прюфера.) |
|||
Строка 2: | Строка 2: | ||
Кодирование Прюфера переводит помеченные деревья порядка <tex>n</tex> в последовательность чисел от <tex>1</tex> до <tex>n</tex> по алгоритму: | Кодирование Прюфера переводит помеченные деревья порядка <tex>n</tex> в последовательность чисел от <tex>1</tex> до <tex>n</tex> по алгоритму: | ||
Пока количество вершин больше одной { | Пока количество вершин больше одной { | ||
− | 1. Выбирается лист v с минимальным номером. | + | 1. Выбирается лист <tex>v</tex> с минимальным номером. |
− | 2. В код Прюфера добавляется номер вершины, смежной с v | + | 2. В код Прюфера добавляется номер вершины, смежной с <tex>v</tex>. |
− | 3. Вершина v и инцидентное ей ребро удаляются из дерева. | + | 3. Вершина <tex>v</tex> и инцидентное ей ребро удаляются из дерева. |
} | } | ||
Полученная последовательность называется '''кодом Прюфера''' для заданного дерева. | Полученная последовательность называется '''кодом Прюфера''' для заданного дерева. | ||
Строка 10: | Строка 10: | ||
{{Лемма | {{Лемма | ||
|statement= | |statement= | ||
− | Номер вершины v встречается в коде Прюфера тогда и только тогда, когда v не является листом или v имеет номер <tex>n</tex>. | + | Номер вершины <tex>v</tex> встречается в коде Прюфера тогда и только тогда, когда <tex>v</tex> не является листом или <tex>v</tex> имеет номер <tex>n</tex>. |
|proof= | |proof= | ||
# Вершина с номером <tex>n</tex> не может быть удалена, следовательно на последнем шаге у неё была смежная вершина, и число <tex>n</tex> встретилось в коде. | # Вершина с номером <tex>n</tex> не может быть удалена, следовательно на последнем шаге у неё была смежная вершина, и число <tex>n</tex> встретилось в коде. | ||
Строка 35: | Строка 35: | ||
{{Теорема | {{Теорема | ||
|statement= | |statement= | ||
− | Кодирование Прюфера задаёт биекцию между множествами помеченных деревьев порядка <math>n</math> и последовательностями длиной <tex>n - 2</tex> из чисел от <tex>1</tex> до <tex>n</tex> | + | Кодирование Прюфера задаёт биекцию между множествами помеченных деревьев порядка <math>n</math> и последовательностями длиной <tex>n - 2</tex> из чисел от <tex>1</tex> до <tex>n</tex> |
|proof= | |proof= | ||
# Каждому помеченному дереву приведенный алгоритм сопоставляет последовательность. | # Каждому помеченному дереву приведенный алгоритм сопоставляет последовательность. |
Версия 03:01, 9 октября 2010
Коды Прюфера.
Кодирование Прюфера переводит помеченные деревья порядка
в последовательность чисел от до по алгоритму:Пока количество вершин больше одной { 1. Выбирается листс минимальным номером. 2. В код Прюфера добавляется номер вершины, смежной с . 3. Вершина и инцидентное ей ребро удаляются из дерева. }
Полученная последовательность называется кодом Прюфера для заданного дерева.
Лемма: |
Номер вершины встречается в коде Прюфера тогда и только тогда, когда не является листом или имеет номер . |
Доказательство: |
|
Лемма: |
По любой последовательности длиной из чисел от до можно построить помеченное дерево,
для которого эта последовательность является кодом Прюфера. |
Доказательство: |
Доказательство проведем по индукции.
База. |
Теорема: |
Кодирование Прюфера задаёт биекцию между множествами помеченных деревьев порядка и последовательностями длиной из чисел от до |
Доказательство: |
|
Следствием из этой теоремы является формула Кэли.