1. C语言:为什么线性结构的顺序存储是一种随机存取存储结构谢谢
顺序存储中,一般一个元素紧紧地挨着另外的一个元素,设序号为i 的元素的存储位置为Li,每个元素长度为d,则序号为j的元素的存储位置为Li + d(j - i),这个式子对所有元素序号(下标)都是一样的计算时间,也就是说,访问任何一个元素的时间都是相同的,因此是随机存取
当然,C语言中自然就是数组,一个接一个存放,结论一样的
2. 比较一下顺序表和链表的特点.
顺序表使用备迟数组存储线形的元素,其特点是可以随机存取,但是,因为逻辑上相邻的元素物理上也相邻,所以插入删除乱指需要移动元素.链表使用指针链表示线形表元素仿陪李的逻辑关系,插入和删除只需修改指针,不能随机存取.
3. 线性表的顺序存储结构是随机存取的
可以参考下面几种解释
1、解释一:
顺序存储结构的地址在内存中是连续的所以可以通过计算地址实现随机存取,与此相对 链式存储结构的存储地址不一定连续,只能通过第个结点的指针顺序存取
2、解释二:
线性表的顺序存储结构可以通过线性表的首址加偏移的方法计算出来第i个数据的位置a+i*sizeof(单个结构)而线性表的链式存储结构要访问第i个数据,就必须先访问前面的i-1个数据
(3)顺序表为什么能随机访问任意元素扩展阅读:
线性表主要由顺序表示或链式表示,在实际应用中,常以栈、队列、字符串等特殊形式使用,顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素,称为线性表的顺序存储结构或顺序映像,顺序存储结构是随机存取的。
链式表示指的是用一组任意的存储单元存储线性表中的数据元素,称为线性表的链式存储结构。它的存储单元可以是连续的,也可以是不连续的。
4. 顺序表和一维数组一样,都可以按下标随机(或直接)访问是对是错
顺序表和一维数组一样,都可以按下标随机(或直接)访问,这个说法是错的。因为顺序表可以是顺序存储的,也可以是链式存储的。前者可以按下标实现随机访问,而节点才。逐个节点访问到所需要的节点才可以,逐个节点访问到所需要的节点才可以。