diff --git a/algorithms/utils/check_order.c b/algorithms/utils/check_order.c new file mode 100644 index 0000000..07f0775 --- /dev/null +++ b/algorithms/utils/check_order.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* check_order.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mteriier +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/12/09 11:57:06 by mteriier #+# #+# */ +/* Updated: 2025/12/09 12:02:28 by mteriier ### ########lyon.fr */ +/* */ +/* ************************************************************************** */ + +#include "push_swap.h" + +int check_order(t_stack *stack) +{ + t_stack *first; + + first = stack; + while (stack->next != first) + { + if (stack->value > stack->next->value) + return (0); + stack = stack->next; + } + return (0); +} diff --git a/algorithms/utils/stack_len.c b/algorithms/utils/stack_len.c new file mode 100644 index 0000000..c379297 --- /dev/null +++ b/algorithms/utils/stack_len.c @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* stack_len.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: mteriier +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2025/12/09 12:05:15 by mteriier #+# #+# */ +/* Updated: 2025/12/09 12:07:29 by mteriier ### ########lyon.fr */ +/* */ +/* ************************************************************************** */ + +#include "push_swap.h" + +int stack_len(t_stack *stack) +{ + t_stack *first; + int i; + + first = stack; + if (!stack) + return (0); + i = 1; + while (stack->next != first) + { + stack = stack->next; + i++; + } + return (i); +}