![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
#include <algorithm>#include <cstdint>#include <limits>#include <memory>#include <set>#include <utility>#include <vector>#include "absl/container/btree_map.h"#include "absl/container/flat_hash_map.h"#include "absl/container/inlined_vector.h"#include "absl/log/check.h"#include "absl/types/span.h"#include "ortools/base/map_util.h"#include "ortools/graph/connected_components.h"#include "ortools/graph/graph.h"#include "ortools/graph/iterators.h"Go to the source code of this file.
Classes | |
| class | util::UndirectedAdjacencyListsOfDirectedGraph< Graph > |
| class | util::UndirectedAdjacencyListsOfDirectedGraph< Graph >::AdjacencyListIterator |
Namespaces | |
| namespace | util |
| A collections of i/o utilities for the Graph classes in ./graph.h. | |
Functions | |
| template<class Graph> | |
| bool | util::GraphHasSelfArcs (const Graph &graph) |
| Implementations of the templated methods. | |
| template<class Graph> | |
| bool | util::GraphHasDuplicateArcs (const Graph &graph) |
| template<class Graph> | |
| bool | util::GraphIsSymmetric (const Graph &graph) |
| template<class Graph> | |
| bool | util::GraphIsWeaklyConnected (const Graph &graph) |
| template<class Graph> | |
| std::unique_ptr< Graph > | util::CopyGraph (const Graph &graph) |
| Returns a fresh copy of a given graph. | |
| template<class Graph> | |
| std::unique_ptr< Graph > | util::RemapGraph (const Graph &graph, absl::Span< const int > new_node_index) |
| template<class Graph> | |
| std::unique_ptr< Graph > | util::GetSubgraphOfNodes (const Graph &graph, absl::Span< const int > nodes) |
| template<class Graph> | |
| util::UndirectedAdjacencyListsOfDirectedGraph (const Graph &) -> UndirectedAdjacencyListsOfDirectedGraph< Graph > | |
| CTAD for UndirectedAdjacencyListsOfDirectedGraph. | |
| template<class Graph> | |
| std::vector< int > | util::GetWeaklyConnectedComponents (const Graph &graph) |
| bool | util::IsSubsetOf0N (absl::Span< const int > v, int n) |
| bool | util::IsValidPermutation (absl::Span< const int > v) |
| Returns true iff the given vector is a permutation of [0..size()-1]. | |
| template<class Graph> | |
| std::unique_ptr< Graph > | util::RemoveSelfArcsAndDuplicateArcs (const Graph &graph) |
| Returns a copy of "graph", without self-arcs and duplicate arcs. | |
| template<class Graph> | |
| void | util::RemoveCyclesFromPath (const Graph &graph, std::vector< int > *arc_path) |
| template<class Graph> | |
| bool | util::PathHasCycle (const Graph &graph, absl::Span< const int > arc_path) |
| Returns true iff the given path contains a cycle. | |
| template<class Graph> | |
| std::vector< int > | util::ComputeOnePossibleReverseArcMapping (const Graph &graph, bool die_if_not_symmetric) |