148 if (it.get_tgt_node_ne() == tgt)
175 typename GT::Node * src = i.get_curr();
182 for (; j.has_curr(); j.
next_ne())
184 typename GT::Node * tgt = j.get_curr();
209 if (it.get_tgt_node_ne() == tgt)
244 typename GT::Node * src = i.get_curr();
249 typename GT::Node * tgt = j.get_curr();
411 typename GT::Node * p = it.get_curr();
474 size_t min_deg = std::numeric_limits<size_t>::max();
475 typename GT::Node * min_node =
nullptr;
479 typename GT::Node * p = it.get_curr();
void next_ne() noexcept
Advances the iterator to the next filtered element (noexcept version).
Filtered iterator on the nodes of a graph.
Tests Dirac's sufficient condition for Hamiltonian graphs.
bool test_graph(GT &g)
Test Dirac's condition for undirected graphs.
size_t min_required_degree(GT &g) const
Get the minimum degree required by Dirac's condition.
bool test_digraph(GT &g)
Test Dirac-like condition for directed graphs.
std::pair< size_t, typename GT::Node * > find_min_degree_vertex(GT &g)
Find the vertex with minimum degree.
Test_Dirac_Condition(SN &&__sn=SN(), SA &&__sa=SA())
Construct a Dirac condition tester.
bool operator()(GT &g)
Test if a graph satisfies Dirac's Hamiltonian condition.
Tests Ore's sufficient condition for Hamiltonian graphs.
bool are_adjacent(GT &g, typename GT::Node *src, typename GT::Node *tgt)
Check if two nodes are adjacent in an undirected graph.
bool test_graph(GT &g)
Test Ore's condition for undirected graphs.
bool operator()(GT &g)
Test if a graph satisfies Ore's Hamiltonian condition.
Test_Hamiltonian_Sufficiency(SN &&__sn=SN(), SA &&__sa=SA())
Construct a Hamiltonian sufficiency tester.
bool has_arc(typename GT::Node *src, typename GT::Node *tgt)
Check if arc src→tgt exists in a digraph.
bool test_digraph(GT &g)
Test Ore-like condition for directed graphs.
constexpr size_t get_num_nodes() const noexcept
Return the total of nodes of graph.
bool is_digraph() const noexcept
Return true if the graph this is directed.
void reset_counter_nodes() const noexcept
Reset all the counters to zero for all the nodes of graph.
constexpr size_t get_num_arcs() const noexcept
List_Graph< Graph_Node< int >, Graph_Arc< int > > GT
#define NODE_COUNTER(p)
Get the counter of a node.
Main namespace for Aleph-w library functions.
DynList< T > maps(const C &c, Op op)
Classic map operation.
Filtered iterator on all the arcs of a graph.
Default filter for filtered iterators on arcs.
Default filter for the graph nodes.
Filtered iterator of adjacent arcs of a node.
Generic graph and digraph implementations.