/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/13 16:42:34 by dkaiser #+# #+# */
-/* Updated: 2024/04/13 17:31:18 by dkaiser ### ########.fr */
+/* Updated: 2024/04/16 10:32:28 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
#include "libft/libft.h"
#include "push_swap.h"
-/* void optimize_commands(t_list **cmds) */
-/* { */
-/* int optimizations; */
-/* t_list *cur; */
-/* t_list *last; */
-
-/* optimizations = 0; */
-/* cur = *cmds; */
-/* last = NULL; */
-/* while (cur->next) */
-/* { */
-/* if ((*(enum e_pscmd *)cur->content == PA */
-/* && *(enum e_pscmd *)cur->next->content == PB) */
-/* || (*(enum e_pscmd *)cur->content == PA */
-/* && *(enum e_pscmd *)cur->next->content == PB)) */
-/* { */
-/* if (last) */
-/* last->next = cur->next->next; */
-/* else */
-/* (*cmds)->next = cur->next->next; */
-/* ft_lstdelone(cur->next, free); */
-/* ft_lstdelone(cur, free); */
-/* optimizations++; */
-/* } */
-/* if (!optimizations) */
-/* { */
-/* last = cur; */
-/* cur = cur->next; */
-/* } */
-/* else */
-/* break; */
-/* } */
-/* if (optimizations) */
-/* optimize_commands(cmds); */
-/* } */
-
static enum e_pscmd get_cmd(t_list *cmd)
{
if (cmd)
return NO_CMD;
}
-void optimize_commands(t_list **cmds)
+void optimize_commands(t_psdata *data)
{
t_list *cur;
t_list *last;
int optimizations;
- cur = *cmds;
+ cur = data->cmds;
last = cur;
optimizations = 0;
cur = last->next;
}
if (optimizations)
- optimize_commands(cmds);
+ optimize_commands(data);
}
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/12 17:03:30 by dkaiser #+# #+# */
-/* Updated: 2024/04/16 09:35:54 by dkaiser ### ########.fr */
+/* Updated: 2024/04/16 10:31:48 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
}
stack_optimize(data->a);
stack_sort(data);
- /* optimize_commands(&pscmds); */
+ optimize_commands(data);
print_commands(data->cmds);
ft_printf("\nA: ");
stack_print(data->a);
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/12 16:59:09 by dkaiser #+# #+# */
-/* Updated: 2024/04/16 09:29:15 by dkaiser ### ########.fr */
+/* Updated: 2024/04/16 10:32:04 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
void print_commands(t_list *cmds);
int stack_optimize(t_stack *stack);
-void optimize_commands(t_list **cmds);
+void optimize_commands(t_psdata *data);
void stack_sort(t_psdata *data);