algo de 5 uniquement pour exemple en commentaire ok

This commit is contained in:
hugogogo
2021-09-26 16:43:23 +02:00
parent 79f1ddb4ad
commit e346fb3824
3 changed files with 72 additions and 87 deletions

Binary file not shown.

BIN
push_swap

Binary file not shown.

View File

@@ -284,47 +284,36 @@ void sort_5(t_stack **a, t_list *solution)
{ {
int order; int order;
48 67 83 54 65 // algos de 5 uniquement necessaires pour trier cette liste :
1 4 5 2 3 // 5 10 2 7 65 -12 -3 6 12 28 17 13 54 83 20 11 34 21 67 48
// 48 67 83 54 65 | 21 34 20 17 28 | 11 13 12 7 10 | 6 -3 -12 2 5
21 34 20 17 28 // 1 4 5 2 3 | 3 5 2 1 4 | 3 4 5 1 2 | 5 2 1 3 4
3 5 2 1 4
11 13 12 7 10
3 4 5 1 2
6 -3 -12 2 5
5 2 1 3 4
ra(a, &solution);
sa(a, &solution);
rra(a, &solution);
order = order_is(*a, 5); order = order_is(*a, 5);
if (order == 12345) if (order == 12345)
{ {
s sa(a, &solution);
r ra(a, &solution);
s sa(a, &solution);
r ra(a, &solution);
s sa(a, &solution);
r ra(a, &solution);
s sa(a, &solution);
rr rra(a, &solution);
rr rra(a, &solution);
rr rra(a, &solution);
s sa(a, &solution);
r ra(a, &solution);
s sa(a, &solution);
r ra(a, &solution);
s sa(a, &solution);
rr rra(a, &solution);
rr rra(a, &solution);
s sa(a, &solution);
r ra(a, &solution);
s sa(a, &solution);
rr rra(a, &solution);
s sa(a, &solution);
} }
/* /*
else if (order == 12354) else if (order == 12354)
@@ -344,22 +333,21 @@ void sort_5(t_stack **a, t_list *solution)
*/ */
else if (order == 14253) else if (order == 14253)
{ {
|14253 ra(a, &solution);
r 3|1425 sa(a, &solution);
s 3|1452 ra(a, &solution);
r 23|145 sa(a, &solution);
s 23|154 ra(a, &solution);
r 423|15 sa(a, &solution);
s 423|51 rra(a, &solution);
rr 23|514 sa(a, &solution);
s 23|541 rra(a, &solution);
rr 3|5412 sa(a, &solution);
s 3|5421 rra(a, &solution);
rr |54213 sa(a, &solution);
s |54231 ra(a, &solution);
r 1|5423 sa(a, &solution);
s 1|5432 rra(a, &solution);
rr |54321
} }
/* /*
else if (order == 14325) else if (order == 14325)
@@ -425,17 +413,16 @@ void sort_5(t_stack **a, t_list *solution)
*/ */
else if (order == 34512) else if (order == 34512)
{ {
|34512 ra(a, &solution);
r 2|3451 ra(a, &solution);
r 12|345 sa(a, &solution);
s 12|354 ra(a, &solution);
r 412|35 sa(a, &solution);
s 412|53 rra(a, &solution);
rr 12|534 sa(a, &solution);
s 12|543 rra(a, &solution);
rr 2|5431 rra(a, &solution);
rr |54312 sa(a, &solution);
s |54321
} }
/* /*
else if (order == 34521) else if (order == 34521)
@@ -445,17 +432,16 @@ void sort_5(t_stack **a, t_list *solution)
*/ */
else if (order == 35214) else if (order == 35214)
{ {
|35214 sa(a, &solution);
s |35241 ra(a, &solution);
r 1|3524 sa(a, &solution);
s 1|3542 ra(a, &solution);
r 21|354 ra(a, &solution);
r 421|35 sa(a, &solution);
s 421|53 rra(a, &solution);
rr 21|534 sa(a, &solution);
s 21|543 rra(a, &solution);
rr 1|5432 rra(a, &solution);
rr |54321
} }
/* /*
else if (order == 35241) else if (order == 35241)
@@ -502,18 +488,17 @@ void sort_5(t_stack **a, t_list *solution)
else if (order == 52134) else if (order == 52134)
{ {
|52134 sa(a, &solution);
s |52143 ra(a, &solution);
r 3|5214 sa(a, &solution);
s 3|5241 ra(a, &solution);
r 13|524 sa(a, &solution);
s 13|542 rra(a, &solution);
rr 3|5421 rra(a, &solution);
rr |54213 sa(a, &solution);
s |54231 ra(a, &solution);
r 1|5423 sa(a, &solution);
s 1|5432 rra(a, &solution);
rr |54321
} }
/* /*
else if (order == 52143) else if (order == 52143)