1. **初始化链表:**
- 通过 `List_Init` 函数初始化链表,为头结点分配内存,并将头结点的`next`指针置为NULL。
2. **判断链表是否为空:**
- 通过 `List_Empty` 函数判断链表是否为空,检查头结点的`next`指针是否为NULL。
3. **获取链表长度:**
- 使用 `List_Length` 函数遍历链表,计算有效节点的个数,即链表的长度。
4. **创建链表(头插法):**
- 使用 `List_Create` 函数,通过输入一系列整数,采用头插法创建链表,结果为倒序。
5. **创建链表(尾插法):**
- 使用 `List_Create_Tail_Insert` 函数,通过输入一系列整数,采用尾插法创建链表,保持输入顺序。
6. **按位序插入:**
- 使用 `List_Insert` 函数,在指定位序处插入元素,支持在表头和表尾插入。
7. **通过值获取结点和位序:**
- 使用 `List_Get_Elem` 函数,通过给定的值在链表中查找结点,同时返回结点所在的位序。
8. **按位序删除:**
- 使用 `List_Del` 函数,删除指定位序的结点,支持删除表头和表尾。
9. **打印链表所有值:**
- 使用 `List_Show` 函数,遍历链表,打印所有结点的值。
10. **主函数:**
- 主函数演示了上述功能的调用,包括链表的初始化、创建、插入、删除、查找等基本操作。
#include <stdio.h>
#include<stdlib.h>
typedef struct LNode {
int data;