22
33void graph_t::build (const std::vector<edge_t > &edges)
44{
5- std::vector<size_t > count (num_vertices, 0 );
6- for (size_t i = 0 ; i < edges.size (); i++)
7- count[edges[i].first ]++;
8- if (neighbors == NULL )
9- neighbors = (size_t *)malloc (sizeof (size_t ) * edges.size ());
10- else if (edges.size () > nedges)
5+ if (edges.size () > nedges)
116 neighbors = (size_t *)realloc (neighbors, sizeof (size_t ) * edges.size ());
127 CHECK (neighbors) << " allocation failed" ;
138 nedges = edges.size ();
9+
10+ std::vector<size_t > count (num_vertices, 0 );
11+ for (size_t i = 0 ; i < nedges; i++)
12+ count[edges[i].first ]++;
13+
1414 vdata[0 ] = adjlist_t (neighbors);
1515 for (vid_t v = 1 ; v < num_vertices; v++) {
1616 count[v] += count[v-1 ];
@@ -22,15 +22,15 @@ void graph_t::build(const std::vector<edge_t> &edges)
2222
2323void graph_t::build_reverse (const std::vector<edge_t > &edges)
2424{
25- std::vector<size_t > count (num_vertices, 0 );
26- for (size_t i = 0 ; i < edges.size (); i++)
27- count[edges[i].second ]++;
28- if (neighbors == NULL )
29- neighbors = (size_t *)malloc (sizeof (size_t ) * edges.size ());
30- else if (edges.size () > nedges)
25+ if (edges.size () > nedges)
3126 neighbors = (size_t *)realloc (neighbors, sizeof (size_t ) * edges.size ());
3227 CHECK (neighbors) << " allocation failed" ;
3328 nedges = edges.size ();
29+
30+ std::vector<size_t > count (num_vertices, 0 );
31+ for (size_t i = 0 ; i < nedges; i++)
32+ count[edges[i].second ]++;
33+
3434 vdata[0 ] = adjlist_t (neighbors);
3535 for (vid_t v = 1 ; v < num_vertices; v++) {
3636 count[v] += count[v-1 ];
0 commit comments