顺序存储结构和链式存储结构的选择

             容器的存储分为顺序存储和链式存储

一、顺序存储结构

     从数据结构的角度来说顺序储存结构的存储空间固定,可扩展性差,但是如果数据元素个数已知,较链式存储节省空间。

     它的优点是随机读取任意一个元素(因为元素时顺序存储的,所以元素的存储位置之间有一定的关系)但是顺序存储的缺点是删除、插入操作需要花费很多时间在移动元素上。

     STL中的vector就是典型的顺序存储结构。

二、链式存储结构

   对于链式存储而言,插入和删除元素开销小,操作简便,最大特点就是插入、删除运算方便,可扩展性强。STL中list、map就是典型的链式存储结构。

         下面是它的特点:

         1.比顺序存储结构的存储密度小 (每个节点都由数据域和指针域组成,所以相同空间内假设全存满的话顺序存储比链式存储能存得更多)。

         2.逻辑上相邻的节点物理上不必相邻。

         3.插入、删除灵活 (不必移动节点,只要改变节点中的指针)。

         4.查找结点时链式存储要比顺序存储慢。

         5.每个结点是由数据域和指针域组成。

三、结论

    综上所述,如果元素个数已知,且插入删除较少的可以使用顺序结构,而对于频繁有插入删除操作,元素个数未知的,最好使用链式结构,编程时可结合要处理的数据的特点选择或设计数据结构的。





  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值