何时选用顺序表、何时选用链表作为线性表的存储结构为宜

 我来答
帐号已注销
2020-10-13 · TA获得超过77万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:157万
展开全部

顺序表的特点是按位访问快,中间插入删除慢,因此元素个数变动不大,经常按位置访问适宜于顺序存储。

顺序表往往使用一组连续的内存,对固定元素的随机存取(比如存取第几个元素)很方便。因此更适合于存放需要多次修改的数据。

链表的特点是只能顺序访问,中间插入删除快,因此适宜于元素个数变动较大,经常插入删除的场合。

链表就是像铁链一样,可以一直加,只要拿到头,就可以遍历整个链表里面的元素,每个元素的位置可能和其他元素的存储位置不是连续的,所以查询比较慢,但是增加删除比较快。

扩展资料:

如顺序表的每个结点占用len个内存单元,用location (ki)表示顺序表中第i个结点ki所占内存空间的第1个单元的地址。则有如下的关系:location (ki+1) = location (ki) +len

location (ki) = location(k1) + (i-1)len

存储结构要体现数据的逻辑结构,顺序表的存储结构中,内存中物理地址相邻的结点一定具有顺序表中的逻辑关系。

参考资料来源:百度百科-顺序表

chiconysun
推荐于2017-12-13 · TA获得超过2.2万个赞
知道大有可为答主
回答量:5410
采纳率:92%
帮助的人:2485万
展开全部
频繁按位置访问,少插入删除者使用顺序表为适宜
元素个数频繁变化,多插入删除(非在端点进行),无法预估空间等使用链表较为适宜
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嵇赩文雁芙
2019-06-10 · TA获得超过3783个赞
知道大有可为答主
回答量:3161
采纳率:33%
帮助的人:186万
展开全部
顺序表:需要频繁地按位号访问,元素中间插入删除较少(在线性表的端点插入删除不算)
链表:频繁地在非端点插入删除元素、元素个数变动范围较大
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心如青青
2017-12-13
知道答主
回答量:3
采纳率:0%
帮助的人:2.3万
展开全部
在实际应用中,应根据具体问题的要求和性质来选择顺序表或链表作为线性表的存储结构,通常有以下几方面的考虑:1.基于空间的考虑。当要求存储的线性表长度变化不大,易于事先确定其大小时,为了节约存储空间,宜采用顺序表;反之,当线性表长度变化大,难以估计其存储规模时,采用动态链表作为存储结构为好。2.基于时间的考虑。若线性表的操作主要是进行查找,很少做插入和删除操作时,采用顺序表做存储结构为宜;反之,若需要对线性表进行频繁地插入或删除等的操作时,宜采用链表做存储结构。并且,若链表的插入和删除主要发生在表的首尾两端,则采用尾指针表示的单循环链表为宜。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式