<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=86.57.185.117&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=86.57.185.117&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/86.57.185.117"/>
		<updated>2026-04-14T23:01:05Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%9A%D0%BE%D0%B4%D1%8B_%D0%9F%D1%80%D1%8E%D1%84%D0%B5%D1%80%D0%B0&amp;diff=40745</id>
		<title>Коды Прюфера</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%9A%D0%BE%D0%B4%D1%8B_%D0%9F%D1%80%D1%8E%D1%84%D0%B5%D1%80%D0%B0&amp;diff=40745"/>
				<updated>2014-11-11T22:40:45Z</updated>
		
		<summary type="html">&lt;p&gt;86.57.185.117: /* Коды Прюфера */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Коды Прюфера ==&lt;br /&gt;
Кодирование Прюфера переводит [[Количество помеченных деревьев#Помеченное дерево|помеченные деревья порядка &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;]] в последовательность чисел от &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt; до &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; по алгоритму:&lt;br /&gt;
  Пока количество вершин больше двух {&lt;br /&gt;
    1. Выбирается лист &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; с минимальным номером.&lt;br /&gt;
    2. В код Прюфера добавляется номер вершины, смежной с &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt;.&lt;br /&gt;
    3. Вершина &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; и инцидентное ей ребро удаляются из дерева.&lt;br /&gt;
  }&lt;br /&gt;
Полученная последовательность называется '''кодом Прюфера''' для заданного дерева.&lt;br /&gt;
&lt;br /&gt;
{{Лемма&lt;br /&gt;
|statement=&lt;br /&gt;
Номер вершины &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; встречается в коде Прюфера тогда и только тогда, когда &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; не является листом, причём встречается этот номер к коде дерева в точности &amp;lt;math&amp;gt;\deg v - 1&amp;lt;/math&amp;gt; раз.&lt;br /&gt;
|proof=&lt;br /&gt;
# Вершина с номером &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; не может быть удалена, следовательно на последнем шаге у неё была смежная вершина, и число &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; встретилось в коде.&lt;br /&gt;
# Если вершина не является листом, то у неё на некотором шаге была смежная вершина &amp;lt;tex&amp;gt;-&amp;lt;/tex&amp;gt; лист, следовательно номер этой вершины встречается в коде.&lt;br /&gt;
# Если вершина является листом с номером меньше &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;, то она была удалена до того, как был удален ее сосед, следовательно ее номер не встречается в коде.&lt;br /&gt;
&lt;br /&gt;
Таким образом, номера всех вершин, не являющихся листьями или имеющих номер &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;, встречаются в коде Прюфера, а остальные &amp;lt;tex&amp;gt;-&amp;lt;/tex&amp;gt; нет.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Лемма&lt;br /&gt;
|statement=&lt;br /&gt;
По любой последовательности длины &amp;lt;tex&amp;gt;n - 2&amp;lt;/tex&amp;gt; из чисел от &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt; до &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; можно построить помеченное дерево,&lt;br /&gt;
для которого эта последовательность является кодом Прюфера.&lt;br /&gt;
|proof=&lt;br /&gt;
Доказательство проведем по индукции. &amp;lt;br&amp;gt;&lt;br /&gt;
База. &amp;lt;tex&amp;gt;n = 1&amp;lt;/tex&amp;gt; &amp;lt;tex&amp;gt;-&amp;lt;/tex&amp;gt; верно.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Переход от &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; к &amp;lt;tex&amp;gt;n + 1&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Пусть у нас есть последовательность: &amp;lt;tex&amp;gt;A = [a_1, a_2, ..., a_{n - 2}].&amp;lt;/tex&amp;gt;&lt;br /&gt;
Выберем минимальное число &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; не лежащее в &amp;lt;tex&amp;gt;A&amp;lt;/tex&amp;gt;. По предыдущей лемме &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; &amp;lt;tex&amp;gt;-&amp;lt;/tex&amp;gt; вершина, которую мы удалили первой. Соединим &amp;lt;tex&amp;gt;v&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;a_1&amp;lt;/tex&amp;gt; ребром. Выкинем из последовательности &amp;lt;tex&amp;gt;A&amp;lt;/tex&amp;gt; число &amp;lt;tex&amp;gt;a_1&amp;lt;/tex&amp;gt;. Перенумеруем вершины, для всех &amp;lt;tex&amp;gt;a_i &amp;gt; v&amp;lt;/tex&amp;gt; заменим &amp;lt;tex&amp;gt;a_i&amp;lt;/tex&amp;gt; на &amp;lt;tex&amp;gt;a_i - 1&amp;lt;/tex&amp;gt;. А теперь мы можем применить предположение индукции.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Теорема&lt;br /&gt;
|statement=&lt;br /&gt;
Кодирование Прюфера задаёт биекцию между множествами помеченных деревьев порядка &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; и последовательностями длиной &amp;lt;tex&amp;gt;n - 2&amp;lt;/tex&amp;gt; из чисел от &amp;lt;tex&amp;gt;1&amp;lt;/tex&amp;gt; до &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;&lt;br /&gt;
|proof=&lt;br /&gt;
# Каждому помеченному дереву приведенный алгоритм сопоставляет последовательность.&lt;br /&gt;
# Каждой последовательности, как следует из предыдущей леммы, соотвествует помеченное дерево.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Следствием из этой теоремы является [[Количество помеченных деревьев|формула Кэли]].&lt;br /&gt;
&lt;br /&gt;
== Пример построения кода Прюфера ==&lt;br /&gt;
[[Файл: Prufer.png|500px]]&lt;br /&gt;
&lt;br /&gt;
== Пример декодирования кода Прюфера ==&lt;br /&gt;
[[Файл: backprufer.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Источники ==&lt;br /&gt;
* [http://www.intuit.ru/department/algorithms/graphsuse/11/2.html Интернет Университет INTUIT | Представление с помощью списка ребер и кода Прюфера]&lt;br /&gt;
&lt;br /&gt;
[[Категория: Алгоритмы и структуры данных]]&lt;br /&gt;
[[Категория: Остовные деревья ]]&lt;/div&gt;</summary>
		<author><name>86.57.185.117</name></author>	</entry>

	</feed>