mirror of
https://github.com/DavidGailleton/42-Push_Swap.git
synced 2026-01-27 00:41:57 +00:00
adding prototype in push_swap.h and norming some files
This commit is contained in:
@@ -12,26 +12,7 @@
|
||||
|
||||
#include "push_swap.h"
|
||||
|
||||
t_tab *get_tabs(t_stack *first)
|
||||
void bucket_algo(void)
|
||||
{
|
||||
t_tab *tmp;
|
||||
t_tab *first_tab;
|
||||
int len_stack;
|
||||
int scan_nb_in_tab;
|
||||
|
||||
len_stack = stack_len(first);
|
||||
first_tab = first_tab(first);
|
||||
if (!first_tab)
|
||||
return (NULL);
|
||||
scan_nb_in_tab = tab->nb_in;
|
||||
tmp = first_tab;
|
||||
while (scan_nb_in_tab < len_stack)
|
||||
{
|
||||
tmp->next = get_next_tab(first, tmp);
|
||||
if (!(tmp->next))
|
||||
return (free_tab(first_tab));
|
||||
tmp = tmp->next;
|
||||
scan_nb_in_tab += tmp->nb_in;
|
||||
}
|
||||
return (first_tab);
|
||||
return ;
|
||||
}
|
||||
|
||||
@@ -24,9 +24,28 @@ t_tab *allocate_tab(int range_max, int nb)
|
||||
return (tab);
|
||||
}
|
||||
|
||||
void link_tab(t_tab *previous, t_tab *new)
|
||||
t_tab *get_tabs(t_stack *first)
|
||||
{
|
||||
previous->next = new;
|
||||
t_tab *tmp;
|
||||
t_tab *first_tab;
|
||||
int len_stack;
|
||||
int scan_nb_in_tab;
|
||||
|
||||
len_stack = stack_len(first);
|
||||
first_tab = first_tab(first);
|
||||
if (!first_tab)
|
||||
return (NULL);
|
||||
scan_nb_in_tab = tab->nb_in;
|
||||
tmp = first_tab;
|
||||
while (scan_nb_in_tab < len_stack)
|
||||
{
|
||||
tmp->next = get_next_tab(first, tmp);
|
||||
if (!(tmp->next))
|
||||
return (free_tab(first_tab));
|
||||
tmp = tmp->next;
|
||||
scan_nb_in_tab += tmp->nb_in;
|
||||
}
|
||||
return (first_tab);
|
||||
}
|
||||
|
||||
t_tab *first_tab(t_stack *first)
|
||||
|
||||
14
push_swap.h
14
push_swap.h
@@ -28,7 +28,7 @@ typedef struct s_stacks
|
||||
|
||||
typedef struct s_tab
|
||||
{
|
||||
int range_max;
|
||||
int range_max;
|
||||
int nb_in;
|
||||
struct s_tab *next;
|
||||
} t_tab;
|
||||
@@ -53,5 +53,17 @@ void stack_clear_all(t_stack *stack, t_stack *first);
|
||||
t_stack *parsing(int argc, char **argv);
|
||||
t_stacks *init_big_stacks(int argc, char **argv);
|
||||
int ft_atoi(const char *nptr);
|
||||
/*FUNCTION FOR MEDIUM ALGO*/
|
||||
t_tab *get_tabs(t_stack *first);
|
||||
int get_number_in_range(int range, t_stacks *piles);
|
||||
int in_range(int value, int max_range);
|
||||
int calcul_range(int value, int range);
|
||||
int get_next_lower(t_stack *first, int old_lower);
|
||||
int get_first_lower(t_stack *first);
|
||||
int is_upper_compare(t_stack t1, t_stack t2);
|
||||
t_tab *free_tab(t_tab *first);
|
||||
t_tab *get_next_tab(t_stack *first, t_tab tab);
|
||||
t_tab *first_tab(t_stack *first);
|
||||
t_tab *allocate_tab(int range_max, int nb);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -29,11 +29,8 @@ void pa(t_stacks *stacks)
|
||||
stacks->b = stacks->b->next;
|
||||
}
|
||||
stack_add_front(&(stacks->a), b_push);
|
||||
|
||||
}
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
void pb(t_stacks *stacks)
|
||||
{
|
||||
t_stack *a_push;
|
||||
|
||||
Reference in New Issue
Block a user