From d7494ad228ed8b3e166f28180c3b3550d79d4cc7 Mon Sep 17 00:00:00 2001 From: Dominik Kaiser Date: Tue, 16 Apr 2024 17:35:14 +0200 Subject: Work on optimization (still not working) --- stack_utils.c | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) (limited to 'stack_utils.c') diff --git a/stack_utils.c b/stack_utils.c index f240395..720d13c 100644 --- a/stack_utils.c +++ b/stack_utils.c @@ -6,7 +6,7 @@ /* By: dkaiser size; - while (i > 0) - { - dst_stack->stack[i] = dst_stack->stack[i-1]; - i--; - } - dst_stack->stack[0] = src_stack->stack[0]; - dst_stack->size++; - i = 1; - while (i < src_stack->size) - { - src_stack->stack[i-1] = src_stack->stack[i]; - i++; + if (src_stack->size > 0) { + i = dst_stack->size; + while (i > 0) + { + dst_stack->stack[i] = dst_stack->stack[i-1]; + i--; + } + dst_stack->stack[0] = src_stack->stack[0]; + dst_stack->size++; + i = 1; + while (i < src_stack->size) + { + src_stack->stack[i-1] = src_stack->stack[i]; + i++; + } + src_stack->size--; } - src_stack->size--; } void stack_rotate(t_stack *stack) -- cgit v1.2.3