У меня есть неориентированный и невзвешенный (или все ребра взвешенный 1) ациклический граф (G = VxE). Некоторые из узлов этого графа выбраны как sV (sV - подмножество V). Проблема в том, что я хочу найти подграф, охватывающий все выбранные узлы. Естественно, некоторые не выбранные узлы могут быть покрыты. Но узлы, которые не находятся на нужном подграфе, ограничены. Эти ограниченные узлы не должны находиться в подграфе решения, если только они не находятся только по одному пути между двумя выбранными узлами. Пример:подграф ациклического графа, охватывающий некоторые выбранные узлы, но другие узлы не на пути
A B C D
A - + + -
B + - + -
C + + - +
D - - + -
A, B, C, D - узлы, + представляет собой включение ребер. Для этого графа B и D выбраны узлы. Решение, которое я хочу для этого примера, выглядит следующим образом: Подграф состоит из узлов B, C, D и ребер (B, C), (C, D) *. Обратите внимание, что A не находится в подграфе, как предполагалось. Какой подход помогает мне найти этот тип подграфов? Спасибо за идеи.
* (X, Y) представляют собой ребро между узлами Х и Y.
Вы ищете лучшее решение или просто решение? Я думаю, вы можете легко написать наивное решение. Кроме того, я чувствую, что этот вопрос может переместиться на другой сайт SE (http://math.stackexchange.com/ возможно). – Josay
На самом деле, я не ищу лучшего решения. Любое решение оценивается. – harun