本文数据结构讲解参考书目:
通过网盘分享的文件:数据结构 C语言版.pdf
链接: https://pan.baidu.com/s/159y_QTbXqpMhNCNP_Fls9g?pwd=ze8e 提取码: ze8e
个人主页:樱娆π-优快云博客
大佬们!!!需要互三的d我!!!!1
目录
* 本文中提到的aij表示下标为ij
数组的类型定义
数组是由类型相同的数据元素构成的有序集合,每个元素称为数组元素,每个元素受 n(n>=1) 个线性关系的约束,每个元素在 n 个线性关系中的序号儿 i1, …,in 称为该元素的下标,可 以通过下标访问该数据元素。因为数组中每个元素处千 n(n>=1) 个关系中,故称该数组为 n 维 数组。数组可以看成是线性表的推广,其特点是结构中的元素本身可以是具有某种结构的数据, 但属于同一数据类型.
抽象数据类型数组可形式地定义
ADT Array{
数据对象: ji=0, ···,bi-1, i=l, 2, …, n,
D = { a• 五j2"·Jn·ln(>O)称为数组的维数,坛是数组第i 维的长度,
ji 是数组元素的第j维下标,aj1j2...jn
数据关系: R = {Rl,R2, …, Rn}
基本操作:
}ADT Array
基本操作
基本操作 | 初始条件 | 操作结果 |
InitArray (&A, n, bound i, ···, boundn) | / | 若维数n和各维长度合法, 则构造相应的数组A, 并返回OK |
DestroyArray (&A) | / | 销毁数组A |
Value(A,&e, indexl , …,indexn) | A是n维数组,e为元素变量,随后是n个下标值 | 若各下标不超界,则e赋值为所指定的 A 的元素值, 并返回OK |
Assign(&A,e, indexl, …,indexn) | A是 n 维数组, e 为元素变扯,随后是 n 个下标值 | 若下标不超界,则将 e 的值赋给所指定的A的元素, 并返回OK |
数组的顺序存储
由千数组一般不做插入或删除操作, 也就是说; 一