summaryrefslogtreecommitdiff
path: root/c/dataStructure/线性表/顺序表/sequence.h
diff options
context:
space:
mode:
Diffstat (limited to 'c/dataStructure/线性表/顺序表/sequence.h')
-rwxr-xr-xc/dataStructure/线性表/顺序表/sequence.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/c/dataStructure/线性表/顺序表/sequence.h b/c/dataStructure/线性表/顺序表/sequence.h
new file mode 100755
index 0000000..6a48d67
--- /dev/null
+++ b/c/dataStructure/线性表/顺序表/sequence.h
@@ -0,0 +1,32 @@
+#ifndef SEQUENCE_H_
+#define SEQUENCE_H_
+
+#define MAXSIZE 100
+
+#include<stdio.h>
+#include<stdlib.h>
+#include<stdbool.h>
+
+typedef int ElemType;
+
+typedef struct data {
+ ElemType * elem;
+ int length;
+} Elem;
+
+void InitList (Elem * L);
+void DestroyList (Elem * L);
+void ClearList (Elem * L);
+void AddElem (Elem * L, ElemType e); // Add an element, length +1
+bool ListEmpty (Elem * L);
+ElemType ListLength (Elem * L);
+ElemType GetElem (Elem * L, int i); // Get ith element
+ElemType LocateElem (Elem * L, ElemType e); // return element e's position, if not found, return 0
+ElemType PriorElem (Elem * L, ElemType e); // return precedent element of e
+ElemType NextElem (Elem * L, ElemType e); // return element after e
+bool ListInsert (Elem * L, ElemType e, int i); // insert Elem at i
+bool ListDelete (Elem * L, int i); // delete ith element
+void TraverseList (Elem * L); // traverse all list
+char OperateMenu (void); // show Menu to user
+
+#endif \ No newline at end of file