- 数组 - 数组的抽象数据类型 ADT Array { 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]} P InitArray(&A, n, b1, ... , bn) DestroyArray(&A) Value(A, &e, index) Assign(&A, e, index) }ADT Array - 矩阵压缩存储 - 特殊矩阵:相同元素分布有一定规律的矩阵 - 稀疏矩阵:可以理解为零元素极多的矩阵 - 十字链表 - 广义表 - 广义表的抽象数据类型 ADT GList { D = {e[i] | i = [0,n] n >= 0; e[i] is AtomSet or e[i] is GList} R = {<e[i-1], e[i]> | e[i-1], e in D, 1 <= i <= n} P InitGList(&L) CreateGLits(&L, S) DestroyGList(&L) CopyGList(&T, L) GListLength(L) GListDepth(L) GListEmpty(L) GetHead(L) GetTail(L) InserFirstGL(&L, e) DeleteFirst_GL(&L, &e) Tracerse)GL(L, visit()) }ADT GList - 广义表的结点 - 表结点:由标志域、指示表头和指针域 - 原子结点:标志域和值域