数组存储

  1. 优点:通过下标方式访问元素,速度快。对于有序数组,还可使用二分查找提高检索速度。
  2. 缺点:如果要检索具体某个值,或者插入值(按一定顺序)会整体移动,效率较低
  3. 如图所示:
    在这里插入图片描述

链式存储

  1. 优点:在一定程度上对数组存储方式有优化(比如:插入一个数值节点,只需要将插入节点,链接到链表中即可,删除效率也很好)
  2. 缺点:在进行检索时,效率仍然较低,比如(检索某个值,需要从头节点开始在这里插入图片描述

树存储

  1. 优点:提高了数据存储,读取的效率, 比如利用 二叉排序树(Binary Sort Tree),既可以保证数据的检索速度,同时也 可以保证数据的插入,删除,修改的速度。【示意图,后面详讲】
  2. 缺点:顺序存储可能会浪费空间(在非完全二叉树的时候),但是读取某个指定的节点的时候效率比较高O(0)链式存储相对二叉树比较大的时候浪费空间较少,但是读取某个指定节点的时候效率偏低O(nlogn)
  3. 例如:
    在这里插入图片描述
    查找3只需要两步
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐