Уровень алгоритма

Определение вершинной связности графа: различия между версиями

Материал из Алговики
Перейти к навигации Перейти к поиску
[непроверенная версия][досмотренная версия]
Нет описания правки
Нет описания правки
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
{{level-a}}
== Свойства и структура алгоритма ==
== Свойства и структура алгоритма ==


Строка 20: Строка 22:
== Программная реализация алгоритма ==
== Программная реализация алгоритма ==
=== Особенности реализации последовательного алгоритма ===
=== Особенности реализации последовательного алгоритма ===
=== Локальность данных и вычислений ===
==== Локальность реализации алгоритма ====
===== Структура обращений в память и качественная оценка локальности =====
===== Количественная оценка локальности =====
=== Возможные способы и особенности параллельной реализации алгоритма ===
=== Возможные способы и особенности параллельной реализации алгоритма ===
=== Масштабируемость алгоритма и его реализации ===
=== Результаты прогонов ===
==== Масштабируемость алгоритма ====
==== Масштабируемость реализации алгоритма ====
=== Динамические характеристики и эффективность реализации алгоритма ===
=== Выводы для классов архитектур ===
=== Выводы для классов архитектур ===
=== Существующие реализации алгоритма ===


== Литература ==
== Литература ==
<references />
<references />


[[Категория:Начатые статьи]]
[[Категория:Начатые статьи]]
[[en:Vertex connectivity of a graph]]

Текущая версия от 14:54, 6 июля 2022


Свойства и структура алгоритма

Общее описание алгоритма

Алгоритм Хенцингер-Рао-Габова[1] предназначен для определения вершинной связности графа. Время работы для ориентированного графа [math]\displaystyle{ O(\min \{ k^3 + n, kn \} m) }[/math], где [math]\displaystyle{ k }[/math] – вершинная связность. Для неориентированного графа множитель [math]\displaystyle{ m }[/math] может быть заменён на [math]\displaystyle{ kn }[/math]. В основе алгоритма лежат идеи из более ранних работ[2][3][4][5]: задача о поиске вершинной связности графа может быть сведена к последовательности задач на максимальный поток в нагруженном графе.

Математическое описание алгоритма

Вычислительное ядро алгоритма

Макроструктура алгоритма

Схема реализации последовательного алгоритма

Последовательная сложность алгоритма

Последовательная сложность алгоритма Хенцигер-Рао-Габова для ориентированного графа [math]\displaystyle{ O(\min \{ k^3 + n, kn \} m) }[/math], где [math]\displaystyle{ k }[/math] – вершинная связность. Для неориентированного графа множитель [math]\displaystyle{ m }[/math] может быть заменён на [math]\displaystyle{ kn }[/math].

Информационный граф

Ресурс параллелизма алгоритма

Входные и выходные данные алгоритма

Свойства алгоритма

Программная реализация алгоритма

Особенности реализации последовательного алгоритма

Возможные способы и особенности параллельной реализации алгоритма

Результаты прогонов

Выводы для классов архитектур

Литература

  1. ↑ Henzinger, Monika R, Satish Rao, and Harold N Gabow. “Computing Vertex Connectivity: New Bounds From Old Techniques.” Journal of Algorithms 34, no. 2 (February 2000): 222–50. doi:10.1006/jagm.1999.1055.
  2. ↑ Even, Shimon, and R Endre Tarjan. “Network Flow and Testing Graph Connectivity.” SIAM Journal on Computing 4, no. 4 (1975): 507–18. doi:10.1137/0204043.
  3. ↑ Even, Shimon. “An Algorithm for Determining Whether the Connectivity of a Graph Is at Least K.” SIAM Journal on Computing 4, no. 3 (1975): 393–96.
  4. ↑ Galil, Zvi. “Finding the Vertex Connectivity of Graphs.” SIAM Journal on Computing 9, no. 1 (February 1980): 197–99. doi:10.1137/0209016.
  5. ↑ Hao, J X, and J B Orlin. “A Faster Algorithm for Finding the Minimum Cut in a Directed Graph.” Journal of Algorithms 17, no. 3 (November 1994): 424–46. doi:10.1006/jagm.1994.1043.