abandon optimisations et no more leaks
This commit is contained in:
BIN
builds/algo.o
BIN
builds/algo.o
Binary file not shown.
Binary file not shown.
BIN
builds/print.o
BIN
builds/print.o
Binary file not shown.
BIN
checker_linux
Executable file
BIN
checker_linux
Executable file
Binary file not shown.
@@ -45,6 +45,12 @@ int divide_b(t_stack **a, t_stack **b, t_list *solution);
|
||||
void send_sublist_to_a(t_stack **a, t_stack **b, t_list *solution);
|
||||
void hugo_sort(t_stack **a, t_stack **b, t_list *lst);
|
||||
|
||||
/*
|
||||
** spcecial_sorts_3_5.c
|
||||
*/
|
||||
void special_sort_3(t_stack **a, t_stack **b, t_list *solution);
|
||||
void special_sort_5(t_stack **a, t_stack **b, t_list *solution);
|
||||
|
||||
/*
|
||||
** minisort.c
|
||||
*/
|
||||
|
||||
34
lucky_opti.sh
Normal file
34
lucky_opti.sh
Normal file
File diff suppressed because one or more lines are too long
22
srcs/algo.c
22
srcs/algo.c
@@ -119,23 +119,33 @@ void send_sublist_to_a(t_stack **a, t_stack **b, t_list *solution)
|
||||
mark_step(solution, "send_sublist_to_a");
|
||||
}
|
||||
|
||||
void hugo_sort(t_stack **a, t_stack **b, t_list *solution)
|
||||
void recursif_sort(t_stack **a, t_stack **b, t_list *solution)
|
||||
{
|
||||
if (sublist_size(*a) > 5)
|
||||
if (sublist_size(*a) > 4)
|
||||
divide_a(a, b, solution);
|
||||
else
|
||||
{
|
||||
|
||||
// sort_big(a, b, solution)
|
||||
// mini_sort(a, solution);
|
||||
minisort(a, solution);
|
||||
if (sublist_size(*b) > 5)
|
||||
mini_sort(a, solution);
|
||||
// minisort(a, solution);
|
||||
if (sublist_size(*b) > 4)
|
||||
divide_b(a, b, solution);
|
||||
else if (sublist_size(*b) > 0)
|
||||
send_sublist_to_a(a, b, solution);
|
||||
else
|
||||
return ;
|
||||
}
|
||||
hugo_sort(a, b, solution);
|
||||
recursif_sort(a, b, solution);
|
||||
}
|
||||
|
||||
void hugo_sort(t_stack **a, t_stack **b, t_list *solution)
|
||||
{
|
||||
if (sublist_size(*a) <= 3)
|
||||
special_sort_3(a, b, solution);
|
||||
else if (sublist_size(*a) <= 5)
|
||||
special_sort_5(a, b, solution);
|
||||
else
|
||||
recursif_sort(a, b, solution);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#include "push_swap.h"
|
||||
|
||||
/*
|
||||
int find_biggest(t_stack *list, int size)
|
||||
{
|
||||
int biggest;
|
||||
@@ -49,6 +50,7 @@ void minisort(t_stack **list, t_list *solution)
|
||||
(*list)->limit = 1;
|
||||
mark_step(solution, "minisort");
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
t_stack *test;
|
||||
|
||||
11
srcs/print.c
11
srcs/print.c
@@ -86,6 +86,7 @@ void print_flags(char **part, int flag)
|
||||
void print_result(t_list *result, int flag)
|
||||
{
|
||||
int i;
|
||||
int j;
|
||||
char **part;
|
||||
|
||||
i = -1;
|
||||
@@ -98,10 +99,12 @@ void print_result(t_list *result, int flag)
|
||||
print_flags(part, flag);
|
||||
ft_putchar('\n');
|
||||
result = result->next;
|
||||
free(part[0]);
|
||||
free(part[1]);
|
||||
free(part[2]);
|
||||
free(part[3]);
|
||||
j = 0;
|
||||
while (part[j] != NULL)
|
||||
{
|
||||
free(part[j]);
|
||||
j++;
|
||||
}
|
||||
free(part);
|
||||
}
|
||||
if (flag)
|
||||
|
||||
10
srcs/special_sorts_3_5.c
Normal file
10
srcs/special_sorts_3_5.c
Normal file
@@ -0,0 +1,10 @@
|
||||
#include "push_swap.h"
|
||||
|
||||
void special_sort_3(t_stack **a, t_stack **b, t_list *solution)
|
||||
{
|
||||
}
|
||||
|
||||
void special_sort_5(t_stack **a, t_stack **b, t_list *solution)
|
||||
{
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user