aboutsummaryrefslogtreecommitdiff
path: root/data_structures/chapter_3/linked_list.h
diff options
context:
space:
mode:
Diffstat (limited to 'data_structures/chapter_3/linked_list.h')
-rw-r--r--data_structures/chapter_3/linked_list.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/data_structures/chapter_3/linked_list.h b/data_structures/chapter_3/linked_list.h
new file mode 100644
index 0000000..ecd9040
--- /dev/null
+++ b/data_structures/chapter_3/linked_list.h
@@ -0,0 +1,23 @@
+#ifndef _LIST_H
+
+struct node;
+typedef struct node *node_ptr;
+typedef node_ptr list;
+typedef node_ptr position;
+
+/* elem to int */
+typedef int elem;
+
+list make_empty(list header);
+int is_empty(list header);
+int is_last(position p, list header);
+position find(elem x, list header);
+void delete(elem x, list header);
+position find_previous(elem x, list header);
+void insert(elem x, list header, position p);
+void delete_list(list header);
+position header(list header);
+position first(list header);
+position advance(position p);
+
+#endif /* _LIST_H */