aboutsummaryrefslogtreecommitdiff
path: root/data_structures/chapter_3/linked_list.h
diff options
context:
space:
mode:
authorSteve Lee <me@xiangyangli.com>2017-10-17 00:12:32 +0800
committerSteve Lee <me@xiangyangli.com>2017-10-17 00:12:32 +0800
commitb46c49228497cb440467167bad3123c327bd620f (patch)
tree7547f4da0694b7c85e57e7e56cd1f0e6f3cdc4d8 /data_structures/chapter_3/linked_list.h
parent37f4cc25e5bcf68539d2b3828ecff5d72ae8c74b (diff)
download42-b46c49228497cb440467167bad3123c327bd620f.tar.xz
42-b46c49228497cb440467167bad3123c327bd620f.zip
add
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 */