Warning

This documents an unmaintained version of NetworkX. Please upgrade to a maintained version and see the current NetworkX documentation.

bipartite_alternating_havel_hakimi_graph

bipartite_alternating_havel_hakimi_graph(aseq, bseq, create_using=None)[source]

Return a bipartite graph from two given degree sequences using an alternating Havel-Hakimi style construction.

Nodes from the set A are connected to nodes in the set B by connecting the highest degree nodes in set A to alternatively the highest and the lowest degree nodes in set B until all stubs are connected.

Parameters:

aseq : list

Degree sequence for node set A.

bseq : list

Degree sequence for node set B.

create_using : NetworkX graph instance, optional

Return graph of this type.

Notes

The sum of the two sequences must be equal: sum(aseq)=sum(bseq) If no graph type is specified use MultiGraph with parallel edges. If you want a graph with no parallel edges use create_using=Graph() but then the resulting degree sequences might not be exact.

The nodes are assigned the attribute ‘bipartite’ with the value 0 or 1 to indicate which bipartite set the node belongs to.