From c76f1105f859d6f75dad01bbe0b053b510f66fdd Mon Sep 17 00:00:00 2001 From: Alec <alec.schmidt@hesge.ch> Date: Thu, 24 Feb 2022 14:06:25 +0100 Subject: [PATCH] kek v2 --- vector.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/vector.c b/vector.c index 34e3cab..b48e35d 100644 --- a/vector.c +++ b/vector.c @@ -48,7 +48,7 @@ void vector_push(vector *v, type item) void vector_pop(vector *v, type item) { assert(v->length>0); - if (v->length-1 == v->capacity/2) + if (v->length-1 == v->capacity/4) { v->capacity /=2; v->data = realloc(v->data, v->capacity * sizeof(type)); @@ -104,9 +104,11 @@ void vector_insert(vector *v, type element, int index) void vector_empty(vector *v) { - free(v->data); - vector v2 = vector_create(); - v = &v2; + for (int i = v->length; i > 0; i--) + { + vector_remove(v, i); + } + v->data = realloc(v->data, VECTOR_INIT_CAPACITY * sizeof(type)); } void vector_free(vector *v) @@ -123,7 +125,7 @@ void vector_print(vector *v, void (*print)(type)) print(v->data[i]); printf(","); } - printf("]"); + printf("]\n"); } vector vector_map(vector *v, type (*f)(type)) -- GitLab