您当前的位置: 首页 > 

王佳斌

暂无认证

  • 4浏览

    0关注

    821博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Basics - 数据的逻辑结构和物理结构

王佳斌 发布时间:2019-09-01 14:33:26 ,浏览量:4

前言

数据的存储方式可分为线性表、树和图三种存储结构,而每种存储结构又可细分为顺序存储结构和链式存储结构。数据存储方式如此之多,针对不同类型的数据选择合适的存储方式是至关重要的。

数据存储结构的选择取决于两方面,即数据的逻辑结构和存储结构(又称物理结构)。

逻辑结构

简单地理解,就是指的数据之间的逻辑关系。 在这里插入图片描述 如上图所示:这是一张家庭成员关系图,从图中可以看到,张平、张华和张群是兄弟,他们的父亲是张亮,其中张平有两个儿子,分别是张晶和张磊。以上所说,父子、兄弟等这些关系都指的是数据间的逻辑关系,又称逻辑结构。

一组数据成功存储到计算机的衡量标准是要能将其完整的复原,如果所存储的数据能将此成员关系图彻底复原,则说明数据存储成功。

数据之间的逻辑关系可细分为三类:

  1. 一对一(一个老师讲解一个课程)
  2. 一对多(一个老师管理多个学生)
  3. 多对多(多个学生完成多科作业)

类似集合 {1,2,3,…,n} 这类的数据,每个数据的左侧有且仅有一个数据与其相邻(除1外),同样,每个数据的右侧也只有一个数据与其相邻(除 n 外),所有的数据都是如此,就说数据之间是“一对一”的逻辑关系。

通过学习数据结构,我们可以学到 3 种存储结构分别存储这 3 类逻辑关系的数据,换句话说:

  1. 线性表用于存储具有“一对一”逻辑关系的数据
  2. 树结构用于存储具有“一对多”关系的数据
  3. 图结构用于存储具有“多对多”关系的数据

由此,我们可以通过分析数据之间的逻辑关系来决定使用哪种存储结构,但具体使用顺序存储还是链式存储,还要通过数据的物 理结构来决定。

物理结构

数据的存储结构,也就是物理结构,指的是数据在物理存储空间上选择集中存放还是分散存放。

例如:假设要存储大小为 10G 的数据,则集中存放就如图 3a) 所示,分散存放就如图 3b)所示。 在这里插入图片描述 如果选择集中存储,就使用顺序存储结构。反之,就使用链式存储。

至于如何选择,主要取决于存储设备的状态以及数据的用途。

我们知道,集中存储(底层实现使用的是数组)需要使用一大块连续的物理空间,假设要存储大小为 1G 的数据,若存储设备 上没有整块大小超过 1G 的空间,就无法使用顺序存储,此时就要选择链式存储,因为链式存储是随机存储数据,占用的都是 存储设备中比较小的存储空间,因此有一定几率可以存储成功。

并且,数据的用途不同,选择的存储结构也不同。将数据进行集中存储有利于后期对数据进行遍历操作,而分散存储更有利于后 期增加或删除数据。因此,如果后期需要对数据进行大量的检索(遍历),就选择集中存储;反之,若后期需要对数据做进一步 更新(增加或删除),则选择分散存储。

关注
打赏
1665568777
查看更多评论
立即登录/注册

微信扫码登录

0.0396s