Defined in <
template<typename GraphView> GraphView make_random_neighborhood(size_t n,size_t ef,size_t k,bool bidirectional)
Generates a random graph with N vertices.
Each vertex can connect to others in its neighborhood (+/- k from a vertex's id defines the neighborhood).
k=1 forms a circular list, while
k=N forms an Erdos-Renyi random network. Each vertex connects to
ef neighbors on average, this is not the guaranteed number of edges for a particular vertex. The diameter of the generated graph decreases as
The returned view owns its underlying container.
- n: Number of vertices in the generated graph.
- ef: Average number of outgoing edges per vertex.
- k: Size of the neighborhood to which each vertex can connect.
- bidirectional: True to add back-edges in a directed graph, false for forward edges only.
A view over the generated graph.
using view_type = stapl::graph_view<stapl::multidigraph<int>>; auto v = stapl::generators::make_random_neighborhood<view_type>( 128, 8, 4, true );