summaryrefslogtreecommitdiff
path: root/push_swap.h
diff options
context:
space:
mode:
authorDominik Kaiser2024-04-15 17:54:43 +0200
committerDominik Kaiser2024-04-15 17:54:43 +0200
commit4545c9f4dc339e94bf6ebe0963db55e9dcc131bd (patch)
treeef13af63281b0c7b08b48ade575bec87031055d2 /push_swap.h
parentedede8f8fd0ef6a51271bd7c12a784d9acbad7a8 (diff)
downloadpush_swap-4545c9f4dc339e94bf6ebe0963db55e9dcc131bd.tar.gz
push_swap-4545c9f4dc339e94bf6ebe0963db55e9dcc131bd.zip
Change stacks from linked lists to rotating arrays
Diffstat (limited to 'push_swap.h')
-rw-r--r--push_swap.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/push_swap.h b/push_swap.h
index 29d0e41..3500171 100644
--- a/push_swap.h
+++ b/push_swap.h
@@ -6,7 +6,7 @@
/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/04/12 16:59:09 by dkaiser #+# #+# */
-/* Updated: 2024/04/15 12:02:20 by dkaiser ### ########.fr */
+/* Updated: 2024/04/15 17:41:05 by dkaiser ### ########.fr */
/* */
/* ************************************************************************** */
@@ -31,20 +31,27 @@ enum e_pscmd
NO_CMD
};
-t_list *create_stack(int argc, char *argv[]);
+typedef struct s_stack
+{
+ int *stack;
+ int size;
+} t_stack;
+
+t_stack *create_stack(int argc, char *argv[]);
-void stack_swap(t_list **stack);
-void stack_push(t_list **dst_stack, t_list **src_stack);
-void stack_rotate(t_list **stack);
-void stack_rrotate(t_list **stack);
+void stack_swap(t_stack *stack);
+void stack_push(t_stack *dst_stack, t_stack *src_stack);
+void stack_rotate(t_stack *stack);
+void stack_rrotate(t_stack *stack);
+void stack_print(t_stack *stack);
-void run_command(t_list **stack_a, t_list **stack_b, t_list **cmds,
+void run_command(t_stack *stack_a, t_stack *stack_b, t_list **cmds,
enum e_pscmd cmd);
void print_commands(t_list *cmds);
-int stack_optimize(t_list **stack);
+int stack_optimize(t_stack *stack);
void optimize_commands(t_list **cmds);
-void stack_sort(t_list **stack_a, t_list **stack_b, t_list **cmds);
+t_list *stack_sort(t_stack *stack_a, t_stack *stack_b);
#endif // PUSH_SWAP_H