Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
eulerian_path.h File Reference
#include <vector>
#include "ortools/base/logging.h"

Go to the source code of this file.

Namespaces

namespace  operations_research
 In SWIG mode, we don't want anything besides these top-level includes.
 
namespace  operations_research::internal
 End of the interface. Below is the implementation.
 

Functions

template<typename Graph >
bool operations_research::internal::GraphIsConnected (const Graph &graph)
 
template<typename Graph >
bool operations_research::IsEulerianGraph (const Graph &graph, bool assume_connectivity=true)
 Returns true if a graph is Eulerian, aka all its nodes are of even degree.
 
template<typename NodeIndex , typename Graph >
bool operations_research::IsSemiEulerianGraph (const Graph &graph, std::vector< NodeIndex > *odd_nodes, bool assume_connectivity=true)
 
template<typename NodeIndex , typename Graph >
std::vector< NodeIndexoperations_research::BuildEulerianPathFromNode (const Graph &graph, NodeIndex root)
 
template<typename NodeIndex , typename Graph >
std::vector< NodeIndexoperations_research::BuildEulerianTourFromNode (const Graph &graph, NodeIndex root, bool assume_connectivity=true)
 
template<typename Graph >
std::vector< typename Graph::NodeIndexoperations_research::BuildEulerianTour (const Graph &graph, bool assume_connectivity=true)
 
template<typename Graph >
std::vector< typename Graph::NodeIndexoperations_research::BuildEulerianPath (const Graph &graph, bool assume_connectivity=true)