Сильна орієнтація (теорія графів) – довідка
Редактор: Михайло МельникСильна орієнтація в неорієнтованому графі: перетворення на сильно зв’язний граф
Пошук сильної орієнтації графа
Неорієнтований граф – це граф, у якому ребра не мають напрямку, тобто вони є симетричними. Сильно зв’язний граф – це граф, у якому між будь-якою парою вершин існує шлях. Сильна орієнтація неорієнтованого графа – це призначення напрямку кожному ребру (орієнтація графа), за якого граф перетворюється на сильно зв’язний граф.
Застосування сильної орієнтації
Сильна орієнтація графа має багато застосувань, включаючи:
– Розв’язання задачі пошуку гамільтонового циклу в графі.
– Розв’язання задачі про знаходження максимального незалежного набору в графі.
– Розв’язання задачі про знаходження максимального паросполучення в графі.
– Розв’язання задачі про знаходження мінімального вершинного покриття в графі.
– Розв’язання задачі про знаходження максимального незалежного домінуючого набору в графі.
Алгоритм знаходження сильної орієнтації
Для знаходження сильної орієнтації неорієнтованого графа ми можемо скористатися алгоритмом Косарайю. Алгоритм складається з двох кроків:
**Крок 1**. Знайдемо сильні зв’язні компоненти графа. Сильна зв’язна компонента – це максимальний підграф графа, в якому між будь-якою парою вершин існує шлях. Ми можемо знайти сильні зв’язні компоненти графа за допомогою алгоритму Тар’яна.
**Крок 2**. Орієнтуємо ребра графа так, щоб граф став сильно зв’язним. Для цього ми можемо скористатися алгоритмом лінійного програмування.
Приклад знаходження сильної орієнтації
Розглянемо неорієнтований граф G, зображений на рисунку.
!
У вас є запитання чи ви хочете поділитися своєю думкою? Тоді запрошуємо написати їх в коментарях!
⚡⚡⚡ Топ-новини дня ⚡⚡⚡
Хто такий Такер Карлсон? Новий законопроект про мобілізацію З травня пенсію підвищать на 1000 гривень