summaryrefslogtreecommitdiff
path: root/optimization.c
diff options
context:
space:
mode:
authorDominik Kaiser2024-04-13 16:34:23 +0200
committerDominik Kaiser2024-04-13 16:34:23 +0200
commitf5fe6ded974fea397c7a208456d669f3b5c0672e (patch)
tree461f8dbd5dcf2ca0d3fbd802252ff6cab9534490 /optimization.c
parent4428c51329562af9feb26860b56b8b39191ac18b (diff)
downloadpush_swap-f5fe6ded974fea397c7a208456d669f3b5c0672e.tar.gz
push_swap-f5fe6ded974fea397c7a208456d669f3b5c0672e.zip
Rename optimization.c to stack_optimization.c
Also some cleanup and trying to make norminette happy
Diffstat (limited to 'optimization.c')
-rw-r--r--optimization.c84
1 files changed, 0 insertions, 84 deletions
diff --git a/optimization.c b/optimization.c
deleted file mode 100644
index f1eca7e..0000000
--- a/optimization.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/* ************************************************************************** */
-/* */
-/* ::: :::::::: */
-/* optimization.c :+: :+: :+: */
-/* +:+ +:+ +:+ */
-/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
-/* +#+#+#+#+#+ +#+ */
-/* Created: 2024/04/13 15:25:05 by dkaiser #+# #+# */
-/* Updated: 2024/04/13 16:27:05 by dkaiser ### ########.fr */
-/* */
-/* ************************************************************************** */
-
-#include "libft/ft_printf.h"
-#include "libft/libft.h"
-#include "push_swap.h"
-#include <stdlib.h>
-
-static void sort_array(int size, int *tmp_array)
-{
- int i;
- int k;
- int tmp;
-
- i = 0;
- while (i < size - 1)
- {
- k = i + 1;
- while (k < size)
- {
- if (tmp_array[i] > tmp_array[k])
- {
- tmp = tmp_array[i];
- tmp_array[i] = tmp_array[k];
- tmp_array[k] = tmp;
- }
- k++;
- }
- i++;
- }
-}
-
-static void override_stack(t_list **stack, int *tmp_array)
-{
- t_list *cur;
- int content;
- int i;
-
- cur = *stack;
- while (cur)
- {
- i = 0;
- content = *(int*)cur->content;
- while (content != tmp_array[i])
- i++;
- *(int*)cur->content = i;
- cur = cur->next;
- }
-}
-
-void stack_optimize(t_list **stack)
-{
- int size;
- int *tmp_array;
- t_list *cur;
- int i;
-
- size = ft_lstsize(*stack);
- cur = *stack;
- tmp_array = malloc(size * sizeof(int));
- if (!tmp_array)
- ; // TODO: Error handling
- i = 0;
-
- while(cur)
- {
- tmp_array[i++] = *(int*)cur->content;
- cur = cur->next;
- }
- if (i != size)
- ; // TODO: Error handling
- sort_array(size, tmp_array);
- i = 0;
- override_stack(stack, tmp_array);
-}