From a846e5e8b6442f6aa9ad738e2173da3211325f8e Mon Sep 17 00:00:00 2001 From: Mikkel Thestrup Date: Wed, 3 Dec 2025 22:38:44 +0100 Subject: Added graph_remove_edge() --- src/graph.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/graph.c') diff --git a/src/graph.c b/src/graph.c index 5ad439a..f3e7517 100644 --- a/src/graph.c +++ b/src/graph.c @@ -43,6 +43,18 @@ void graph_add_edge(Graph *g, int i, int j) { g->num_edges++; } +void graph_remove_edge(Graph *g, int i, int j) { + LinkedListNode *in_node = linked_list_find( + g->vertices[i].out_neighbours, + &g->vertices[j]); + LinkedListNode *out_node = linked_list_find( + g->vertices[j].in_neighbours, + &g->vertices[j]); + linked_list_remove(g->vertices[i].out_neighbours, in_node); + linked_list_remove(g->vertices[j].in_neighbours, out_node); + g->num_edges--; +} + Graph *graph_read(const char *filename) { FILE *file = fopen(filename, "r"); char line[1024]; -- cgit v1.2.3-70-g09d2