fix: updating arraylist sitaxis
This commit is contained in:
14
src/graph.c
14
src/graph.c
@@ -28,7 +28,7 @@ Graph *graph_create(GraphType type) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
graph->type = type;
|
graph->type = type;
|
||||||
graph->vertices = arraylist_init(64, sizeof(Vertex));
|
arraylist_init(&graph->vertices, 64, sizeof(Vertex));
|
||||||
|
|
||||||
if (graph->vertices == NULL) {
|
if (graph->vertices == NULL) {
|
||||||
free(graph);
|
free(graph);
|
||||||
@@ -64,7 +64,8 @@ GraphErr graph_add_vertex(Graph *graph) {
|
|||||||
return GRAPH_NULL_ARG;
|
return GRAPH_NULL_ARG;
|
||||||
}
|
}
|
||||||
|
|
||||||
Vertex new_vertex = {.edges = arraylist_init(16, sizeof(Edge))};
|
Vertex new_vertex = {.edges = NULL };
|
||||||
|
arraylist_init(&new_vertex.edges, 16, sizeof(Edge));
|
||||||
|
|
||||||
arraylist_push_back(graph->vertices, &new_vertex);
|
arraylist_push_back(graph->vertices, &new_vertex);
|
||||||
|
|
||||||
@@ -140,9 +141,12 @@ GraphErr graph_dijkstra(Graph *graph, size_t source, DijkstraResult *result) {
|
|||||||
|
|
||||||
size_t vertex_count = arraylist_size(graph->vertices);
|
size_t vertex_count = arraylist_size(graph->vertices);
|
||||||
|
|
||||||
ArrayList *distances = arraylist_init(vertex_count, sizeof(size_t));
|
ArrayList *distances;
|
||||||
ArrayList *visited = arraylist_init(vertex_count, sizeof(bool));
|
arraylist_init(&distances, vertex_count, sizeof(size_t));
|
||||||
ArrayList *prev = arraylist_init(vertex_count, sizeof(size_t));
|
ArrayList *visited;
|
||||||
|
arraylist_init(&visited, vertex_count, sizeof(bool));
|
||||||
|
ArrayList *prev;
|
||||||
|
arraylist_init(&prev, vertex_count, sizeof(size_t));
|
||||||
|
|
||||||
for (size_t i = 0; i < vertex_count; i++) {
|
for (size_t i = 0; i < vertex_count; i++) {
|
||||||
arraylist_push_back(distances, &(size_t){SIZE_MAX});
|
arraylist_push_back(distances, &(size_t){SIZE_MAX});
|
||||||
|
|||||||
Reference in New Issue
Block a user