1.0 单链表实现(LinkList.h):
#pragma once
// 链表
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
#define INVALID_INDEX -1
// 数据类型
typedef int elemType;
// 定义一个链表节点
typedef struct Node
{
// 当前节点保存的数据
elemType data;
// 当前节点的后继节点
struct Node* nextNode;
} LinkNode;
// 定义一个链表头指针
typedef LinkNode* LinkList;
// 创建一个链表
LinkList createLinkList();
// 插入数据
int insertElem(LinkList list, elemType e);
// 尾插法
int insertElemTail(LinkList list, elemType e);
// 插入数据
int insertNode(LinkList list, Node * pNode);
// 获取链表的第 i 个元素
elemType getElem(LinkList list, int index);
// 修改指定位置的元素
void modify(LinkList list, int index, elemType e);
// 删除一个数据
void remove(LinkList list, elemType e);
// 删除一个数据
void removeElem(LinkList list, int index, elemType* e);
// 打印一个链表
void printLinkList(LinkList list);
// 释放链表
void freeLinkList(LinkList list);
2.0 单链表实现文件(LinkList.cpp):