标签:实现 oca blank tin 数组 存储 线性表 tps delete
线性表
- 线性表的抽象数据类型
ADT List { D = {a[i] | a[i] is ElemSet, i = [0, n], n >= 0} R = { <a[i-1], a[i]> | a[i-1],a[i] in D, i = [1, n]} //前驱关系 Operation: InitList(&L) DestyoyList(&L) ClearList(L) ListEmpty(L) ListLength(L) GetElem(L, i, &e) LocateElem(L, e, compare()) PriorElem(L, cur_e, &pre_e) NextElem(L, cur_e, &next_e) ListInsert(&L, i, e) ListDelete(&L, i, &e) ListTraverse(L, visit()) }ADT List
- 线性表的顺序存储结构
- 通过数组方式实现线性表, 存取的复杂度为O(1),但是插入和删除的复杂度为O(n)
- 数组长度难以确定、容易造成空间碎片
- 适用于少修改,多查询的情况
- 线性表的链式存储结构
- 通过链表方式实现线性表, 存取复杂度为O(n), 在已知前驱位置的情况下插入和删除复杂度为O(1)
- 适用于多次修改或者容量未知的情况
- 头指针和头节点
- 头指针:一定是指向线性表的第一个节点(可为空,必须有)
- 头节点:为了操作数据的便利可以添加头节点,数据域无意义(可以存储长度或自定义)(非必要元素)
- 线性表的实现
源码参考:https://www.cnblogs.com/qq188380780/p/7482390.html
标签:实现 oca blank tin 数组 存储 线性表 tps delete
原文地址:https://www.cnblogs.com/qq188380780/p/11216493.html