ПОЗНАВАТЕЛЬНОЕ Сила воли ведет к действию, а позитивные действия формируют позитивное отношение Как определить диапазон голоса - ваш вокал
Игровые автоматы с быстрым выводом Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими Целительная привычка Как самому избавиться от обидчивости Противоречивые взгляды на качества, присущие мужчинам Тренинг уверенности в себе Вкуснейший "Салат из свеклы с чесноком" Натюрморт и его изобразительные возможности Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д. Как научиться брать на себя ответственность Зачем нужны границы в отношениях с детьми? Световозвращающие элементы на детской одежде Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия Как слышать голос Бога Классификация ожирения по ИМТ (ВОЗ) Глава 3. Завет мужчины с женщиной 
Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д. Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу. Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар. | Каркаси (з'єднувальні дерева) Нехай — простий зв'язний граф. Каркасом, або з'єднувальним деревом, графа називають його підграф, який являє собою дерево та містить усі вершини графа . Нехай граф має n вершин і m ребер. Щоб отримати каркас, можна використати процедуру вилучення ребер, які належать простим циклам. Очевидно, що потрібно вилучити ребер. Число називають циклома-тичним числом графа Із теореми 3.6 випливає, що . Цикломатичне число — це певною мірою числова характеристика зв'язності графа; цикломатичне число дерева дорівнює 0. Побудова каркаса — поширена задача. Алгоритм, який полягає у вилученні ребер із простих циклів, неефективний для комп'ютерної реалізації. Для його виконання потрібно ідентифікувати прості цикли, а це складна задача. Ефективний із погляду комп'ютерної реалізації алгоритм побудови каркаса — це послідовний добір ребер у каркас. Це можна зробити за допомогою обходу графа як пошуком углиб, так і пошуком ушир. Під час виконання цих алгоритмів природним способом будують каркас (див. підрозділ 3.9, ребра каркаса позначено потовщеними лініями). Якщо до протоколу обходу графа додати че-тверртий стовпчик, то туди можна записувати ребра, які під час роботи алгоритму позначають потовщеною лінією, і, отже, включають у каркас. Приклад 4.20. На рис. 4.34, а зображено каркас, який було одержано пошуком углиб, а на рис. 4.34, б — пошуком ушир. Початкова вершина в обох випадках — а.  а Рис. 4.34 ТЕОРЕМА 4.4. Нехай - каркас графа , побудований пошуком ушир, починаючи з вершини а. Тоді шлях з а до довільної вершини в - найкоротший шлях від до в графі G. Доведення ґрунтується на аналізі алгоритму пошуку вшир у графі Пропонуємо виконати його як вправу. Зауваження. Використавши для побудови дерева найкоротших шляхів від вершини алгоритм Дейкстри (уважаємо, що довжина кожного ребра дорівнює 1), отримаємо те саме дерево, що й за алгоритмом пошуку вшир. Проте складність цього алгоритму становить чи залежно від способу подання графа, а складність алгоритму пошуку вшир — , де — кількість вершин, — кількість ребер у графі . Проте алгоритм Дейкстри більш універсальний, він придатний для будь-яких додатних до-вжин ребер (а не тільки 1). Тепер розглянемо одну важливу задачу, пов'язану з ідеєю оптимізації. Нехай — зв'язний зважений граф (див. підрозділ 3.8). Потрібно описати алгоритм побудови каркаса , у якому сума ваг ребер якнайменша (су-му беруть за всіма ребрами дерева ). Каркас називають мінімальним. Розв'язати цю задачу дає змогу алгоритм Краскала (J. Kruskal). Алгоритм Краскала Нехай — зв'язний зважений граф з вершинами та ребрами. Виконати такі дії. 1.Вибрати ребро яке має в графі найменшу вагу. 2.Визначити послідовність ребер ; на кожному кроці вибирати відмінне від попередніх ребро з найменшою вагою й таке, що не утворює простих циклів з уже вибраними ребрами. Одержане дерево з множиною ребер — мінімальний каркас графа . Розглянемо одну з можливих реалізацій алгоритму Краскала.Крок 1. Упорядкувати множину ребер за зростанням ваг: .Крок 2. Утворити розбиття множини вершин на одноелементні підмножини: . Крок 3. Вибирати таке чергове ребро з упорядкованої послідовності ребер, що його кінці містяться в різних множинах розбиття (це забезпечить відсутність простих циклів). Якщо вибрано ребро , то множини розбиття, які містять вершини та , об'єднують в одну множину.  Приклад 4.21. На рис. 4.35 зображено граф, ребра якого пронумеровано за зростанням ваг. Мінімальний каркас виділено потовщеними лініями. Процес відбору ребер наведено в табл. 4.4. Мінімальний каркас утворюють ребра . | Крок 4. Якщо вже вибрано ребро (у такому разі всі підмножини розбиття об'єднаються в одну), то зупинитись, бо вибрані ребра утворюють мінімальний каркас. Інакше перейти до кроку 3. Ребро | Розбиття множини вершин | Відбір ребра у мінімальний каркас |  |  |  |  |  |  |  |  |  |  |  | ― |  |  |  |  |  | ― |  |  | ― |  |  |  |  |  | ― |  |  | ― |  |  |  | |  | | Алгоритм Краскала належить до жадібних [23]. Так називають алгоритми опти-мізації, які на кожному кроці вибирають найкращий із можливих варіантів. |