org.jgrapht.generate

Class GnpRandomGraphGenerator<V,E>

• Type Parameters:
V - the graph vertex type
E - the graph edge type
All Implemented Interfaces:
GraphGenerator<V,E,V>

public class GnpRandomGraphGenerator<V,E>
extends Object
implements GraphGenerator<V,E,V>
Create a random graph based on the G(n, p) Erdős–Rényi model. See the Wikipedia article for details and references about Random Graphs and the Erdős–Rényi model .

In the G(n, p) model, a graph is constructed by connecting nodes randomly. Each edge is included in the graph with probability p independent from every other edge. The complexity of the generator is O(n^2) where n is the number of vertices.

For the G(n, M) model please see GnmRandomGraphGenerator.

Since:
September 2016
Author:
Dimitrios Michail
GnmRandomGraphGenerator
• Constructor Detail

• GnpRandomGraphGenerator

public GnpRandomGraphGenerator(int n,
double p)
Create a new G(n, p) random graph generator. The generator does not create self-loops.
Parameters:
n - the number of nodes
p - the edge probability
• GnpRandomGraphGenerator

public GnpRandomGraphGenerator(int n,
double p,
long seed)
Create a new G(n, p) random graph generator. The generator does not create self-loops.
Parameters:
n - the number of nodes
p - the edge probability
seed - seed for the random number generator
• GnpRandomGraphGenerator

public GnpRandomGraphGenerator(int n,
double p,
long seed,
boolean loops)
Create a new G(n, p) random graph generator.
Parameters:
n - the number of nodes
p - the edge probability
seed - seed for the random number generator
loops - whether the generated graph may create loops
• GnpRandomGraphGenerator

public GnpRandomGraphGenerator(int n,
double p,
Random rng,
boolean loops)
Create a new G(n, p) random graph generator.
Parameters:
n - the number of nodes
p - the edge probability
rng - the random number generator to use
loops - whether the generated graph may create loops
• Method Detail

• generateGraph

public void generateGraph(Graph<V,E> target,
VertexFactory<V> vertexFactory,
Map<String,V> resultMap)
Generates a random graph based on the G(n, p) model.
Specified by:
generateGraph in interface GraphGenerator<V,E,V>
Parameters:
target - the target graph
vertexFactory - the vertex factory
resultMap - not used by this generator, can be null