java.lang.Object
org.jgrapht.generate.ScaleFreeGraphGenerator<V,E>
- Type Parameters:
V- the graph vertex typeE- the graph edge type
- All Implemented Interfaces:
GraphGenerator<V,E,V>
public class ScaleFreeGraphGenerator<V,E> extends java.lang.Object implements GraphGenerator<V,E,V>
Generates directed or undirected
scale-free network of any
size. Scale-free network is a connected graph, where degrees of vertices are distributed in
unusual way. There are many vertices with small degrees and only small amount of vertices with
big degrees.
- Author:
- Ilya Razenshteyn
-
Constructor Summary
Constructors Constructor Description ScaleFreeGraphGenerator(int size)ConstructorScaleFreeGraphGenerator(int size, long seed)ConstructorScaleFreeGraphGenerator(int size, java.util.Random rng)Constructor -
Method Summary
Modifier and Type Method Description voidgenerateGraph(Graph<V,E> target, java.util.Map<java.lang.String,V> resultMap)Generates scale-free network withsizepassed to the constructor.
-
Constructor Details
-
ScaleFreeGraphGenerator
public ScaleFreeGraphGenerator(int size)Constructor- Parameters:
size- number of vertices to be generated
-
ScaleFreeGraphGenerator
public ScaleFreeGraphGenerator(int size, long seed)Constructor- Parameters:
size- number of vertices to be generatedseed- initial seed for the random generator
-
ScaleFreeGraphGenerator
public ScaleFreeGraphGenerator(int size, java.util.Random rng)Constructor- Parameters:
size- number of vertices to be generatedrng- the random number generator
-
-
Method Details
-
generateGraph
Generates scale-free network withsizepassed to the constructor.- Specified by:
generateGraphin interfaceGraphGenerator<V,E,V>- Parameters:
target- receives the generated edges and vertices; if this is non-empty on entry, the result will be a disconnected graph since generated elements will not be connected to existing elementsresultMap- unused parameter, can be null
-