背景
转眼就到九月份了,数据结构的工作还未结束,任重而道远啊,加油~
线性表是比较常见的数据结构,按存储方式分,有链表(链式存储)和数组(顺序存储)两种,那么链表如何实现呢?以下是一些个实现思路,完整代码请用神奇的传送门~
一,概念及示意图
(一)数据结构分类图

(二)线性表示意图

二,实现代码
(一)数据形式
1 | typedef struct node |
(二)初始化
1 | void InitList(PQUEUE queue) |
(三)检测为空或已满
1 | bool ListIsEmpty(Plist phead) |
(四)追加操作
1 | bool AppendItem(Plist phead) |
(五)插入操作
1 | bool InsertItem(Plist phead) |
(六)删除操作
1 | int DeleteItem(Plist phead) |
(七)遍历操作
1 | bool TraverseList(Plist phead, void(*pfun)(Plist plst)) |
(八)获取长度
1 | int ListLength(Plist phead) |