Graphicallity#
Undirected degree sequence#
- is_graphic(degree_seq: List[int]) bool #
-
template<std::ranges::forward_range Range>
requires degree_range<Range>
bool is_graphic(Range &°ree_sequence)#
Checks if the sequence can be the degree sequence of a valid undirected graph, containing no multi-edges or loops, based on the Erdős–Gallai algorithm [8, 9].
Directed degree-pair sequence#
- is_digraphic(in_out_degree_sequence: List[Pair[int, int]]) bool #
-
template<std::ranges::input_range PairRange>
requires degree_pair_range<PairRange>
bool is_digraphic(PairRange &&in_out_degree_sequence)#
Checks if the sequence can be the degree-pair sequence of a valid directed graph, containing no multi-edges or loops, based on the algorithm by Kleitman and Wang [10].
A degree pair sequence is a range (list) of pairs (2-tuples) of integers, where the first element of each item represents in-degree and the second item out-degree of one vertex.