Вопросы по теме 'boost-graph'

Как создать неориентированный граф C ++ Boost и пройти по нему в порядке глубокого первого поиска (DFS)?
Как создать неориентированный граф C ++ Boost и пройти по нему в порядке глубокого первого поиска (DFS)?
13093 просмотров
schedule 23.09.2022

Должен ли я использовать boost::property_map?
(Извините за название, я не смог придумать хороший заголовок короче 140 символов...) Я пишу алгоритм графа для библиотеки boost::graph. В моем алгоритме мне нужно хранить переменные, веса и счетчики в узлах. Типичным способом сделать это,...
1960 просмотров
schedule 07.12.2023

Проверка property_map Boost, существует ли ключ?
В контексте BGL мне нужно повторить in_edges и out_edges , но я хочу исключить те, которые являются частью обратных ребер, т.е. исключить те, которые являются частью обратных ребер property_map . В приведенном ниже коде показано, что я хотел бы...
984 просмотров
schedule 03.04.2024

График BGL со списком карт на ребрах
Я пытаюсь создать некоторую конкретную структуру с помощью библиотеки Boost Graph Library. Мне нужны узлы (вершины) с портами ввода и вывода. Каждый выходной порт может быть подключен к любому входному порту другого узла. Я хочу иметь возможность...
275 просмотров
schedule 22.04.2024

использование boost bind для объекта функции с состоянием и двумя аргументами в operator () ()
У меня проблемы со следующим: использование boost :: bind / std :: bind в графе ускорения. //function object template <typename graph_t> struct my_functor { public: my_functor() { } my_functor(graph_t& _G) : G(_G) { }...
97 просмотров
schedule 04.12.2022

Последний элемент вектора не отображается/проблема с индексацией вектора
У меня странная ошибка, которую я просто не могу найти. Я строю график adjacency_list, используя библиотеку Boost Graph, и заполняю список вершин вектором. Когда я перебираю вектор, он правильно распечатывает все вершины, однако, когда я запускаю...
116 просмотров
schedule 21.05.2024

Как эффективно перетасовать ребра в графе
Я пишу код для перетасовки ребер графа в соответствии с Модель конфигурации . По сути, два ребра [(v1,v2) и (v3,v4)] выбираются случайным образом и меняются местами [получая (v1,v3) и (v2,v4)], если собственное ребро не создается [v1 не...
618 просмотров
schedule 14.11.2023

Граф с двумя типами узлов
Я пишу программу, используя С++ и библиотеку Boost Graph (BGL). У меня есть два класса с именами Buildings и Contracts. Мне нужно сделать график, который представляет отношения связи между ними всеми. Таким образом, граф должен иметь два типа...
1281 просмотров
schedule 24.11.2023

Повысить отфильтрованный граф с ребрами из черного списка
Я хочу запустить Дейкстру на графе с занесенными в черный список ребрами, т. е. я хочу вычислить кратчайшие пути, которые не используют эти ссылки. На данный момент я сначала определяю фильтр: typedef std::pair<int, int> Edge; typedef...
285 просмотров
schedule 12.12.2023

Библиотека графов Boost с использованием связанных свойств
Я новичок в BGL и пытаюсь настроить простую программу поиска кратчайшего пути с использованием BGL, где неориентированный граф определяется как список смежности с определенными пользователем EdgeProperty и VertexProperty. Я получаю ошибку времени...
787 просмотров
schedule 12.12.2022

Повышайте сильные компоненты с помощью listS
Существует не так уж много примеров для графов, которые имеют сильно связанные компоненты в listS, а не в vecS. Вот эквивалентный пример для vecS #include <boost/config.hpp> #include <vector> #include <iostream> #include...
149 просмотров

Как я могу перебирать вершины и ребра в порядке, заданном (связанным) свойством, в BGL?
Скажем, у меня есть график повышения #include <boost/graph/adjacency_list.hpp> struct Vertex { double property_1; int property_2; }; using Graph_t = boost::adjacency_list<boost::listS,...
99 просмотров