数据结构——存储结构和存取结构
存储结构和存取结构的概念存储结构和存取结构是两种完全不同的概念。所谓存储结构,指的是数据在内存中真实的存储状态;可分为2大类:顺序存储结构和链式存储结构。存取结构,指的是存取数据的方式,具体也可以分为2大类:顺序存取结构和随机存取结构。
通常来说,线性表的顺序存储结构是随机存取结构,而不是顺序存取结构;线性表的链式存储结构是顺序存取结构,而不是随机存取结构。可能感觉有点绕,下面进行详细讲解:
线性表的顺序存储结构,本质就是采用一块连续的存储空间将所有数据集中存储起来。顺序存储结构最大的特点是,可以随机存取数据。例如,有一个数组 a,其初始存储状态为:
在对数组中数据元素操作过程都是通过数组下标完成的,而下标可以是随机的。
链表存储的数据,它们所在的物理空间并不紧挨着,而是分散在内存中的各个位置。仍以存储 0、1、2、和 3 这4个元素为例,如果采用链式存储结构,则各个元素的存储状态可能为:
如图 2 所示,如果我们想在链表中存取数据,就只能从链表头结点开始,逐个遍历链表中的每个元素,直至找到目标元素。也就是说,从链表中存取数据,必须从遵循各个元素在链表中存储的逻辑顺序,无法随机存取。
总结
我来回答