Package org.graph4j.hamiltonian
Class PalmerHamiltonianCycle
java.lang.Object
org.graph4j.SimpleGraphAlgorithm
org.graph4j.hamiltonian.PalmerHamiltonianCycle
- All Implemented Interfaces:
HamiltonianCycleAlgorithm
public class PalmerHamiltonianCycle
extends SimpleGraphAlgorithm
implements HamiltonianCycleAlgorithm
The algorithm finds a Hamiltonian cycle in an undirected simple graph that
satisfies Ore's condition:
deg(v) + deg(u) >= |V(G)|, for
every pair of distinct non-adjacent vertices v and u.
The Ore's condition is not tested explicitly - if the algorithm fails to
identify a hamiltonian cycle, using Palmer's alorithm, it returns
null.
Reference: Palmer, E. M. (1997), "The hidden algorithm of Ore's theorem on
Hamiltonian cycles".- Author:
- Cristian Frăsinaru
-
Field Summary
Fields inherited from class org.graph4j.SimpleGraphAlgorithm
graph -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.graph4j.SimpleGraphAlgorithm
getGraph
-
Constructor Details
-
PalmerHamiltonianCycle
-
-
Method Details
-
findCycle
- Specified by:
findCyclein interfaceHamiltonianCycleAlgorithm- Returns:
- an Hamiltonian cycle, or
nullif the graph does not contain one or the algorithm is unable to find it.
-