Маркировка групп вершин в графике эффективно без BFS / DFS
-
29-09-2020 - |
Вопрос
У меня есть график с набором вершин $ \ mathcal {v} $ и набор ребер $ \ mathcal {e} $ . Существует путь между каждыми 2 вершинами на графике. К каждому краю существует ассоциированный вес $ W (E), e \ in \ mathcal {e} $ . Я определяю (глобальный) порог $ T $ такой, что если $ W ((U, V))
Идея, с которой я придумал, - это повторять вершины, перейти на их 1-кольцевое соседство и создать новую группу каждый раз, когда $ w ((u, v) )
Решение
Как вы выделяете в Ваши комментарии , разумный подход - удалить все края с весом $ \ GE T $ , затем вычислитьподключенные компоненты результирующего графа (используя любой стандартный алгоритм для вычисления подключенных компонентов).
Другие советы
Я верю, что мой алгоритм правильный. Эскиз доказательства представлен ниже:
Есть 2 случая: либо $ u \ ne v \ in \ mathcal {v} $ нужно быть из одной группы, или они должны быть из Разные группы (в зависимости от того, существует ли путь между ними такими, что $ w (e)
-
case 1: пусть $ u, v \ in \ mathcal {v} $ и есть путь от $ u $ to $ v $ : $ \ pi= e_1, ..., e_n $ такой, что $ w (e_i)
. Затем $ H (G (u)) $ должен равняться $ h (g (v)) $ для алгоритм будет правильным. -
Предположение алгоритма Неправильность: предположим, что это не так, и что $ u $ , $ V $ принадлежат различным группам, основанным на результате алгоритма. Для простоты предположим, что $ \ pi=pi_1, x, y, z, \ pi_2; \, x, y, z \ in \ mathcal {v} $ такой Что все вершины из $ \ pi_1, x $ относятся к $ h (g (u)) $ и Все вершины на $ y, z, \ pi_2 $ принадлежат $ h (g (v)) $ на основе алгоритма. Случай после вышеупомянутого предположения будет доказано, но должно быть ясно, что то же самое придерживается индукции, даже если $ \ pi $ разделен на большее количество групп на основе алгоритм.
-
case 2: $ u, v \ in \ mathcal {v} $ и нет пути $ \ pi $ from $ u $ to $ v $ такой, что $ W (E)
, затем $ h (g (u))= h (g (v)) $ . -
Предположение алгоритма. Неправильность: предположим, что $ h (g (u))= h (g (v)) $ .
Доказательство противоречия: от (1) следует за $ W (x, y)
Доказательство противоречия: как при создании группы, так и в объединении групп (единственные два способа для достижения вершин в той же группе), должны существовать путь между $ u $ и $ v $ такой, что $ W (E)
Очевидно, что доказательство довольно неформальное, поэтому я мог пропустить что-то. Я оставлю вопрос открытым на некоторое время, потому что 1) кто-то может придумать лучше и оптимизировать Algoritm, а 2) У меня может быть ошибка в моем доказательстве.