networkx 2.8.2 Pypi GitHub Homepage
Other Docs
ParametersReturns
one_exchange(G, initial_cut=None, seed=None, weight=None)

Use a greedy one exchange strategy to find a locally maximal cut and its value, it works by finding the best node (one that gives the highest gain to the cut value) to add to the current cut and repeats this process until no improvement can be made.

Parameters

G : networkx Graph

Graph to find a maximum cut for.

initial_cut : set

Cut to use as a starting point. If not supplied the algorithm starts with an empty cut.

seed : integer, random_state, or None (default)

Indicator of random number generation state. See Randomness<randomness> .

weight : object

Edge attribute key to use as weight. If not specified, edges have weight one.

Returns

cut_value : scalar

Value of the maximum cut.

partition : pair of node sets

A partitioning of the nodes that defines a maximum cut.

Compute a partitioning of the graphs nodes and the corresponding cut value.

Examples

See :

Local connectivity graph

Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.

Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)

SVG is more flexible but power hungry; and does not scale well to 50 + nodes.

All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them


GitHub : /networkx/algorithms/approximation/maxcut.py#51
type: <class 'function'>
Commit: