初识数据结构之逻辑结构

Posted 英雄哪里出来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识数据结构之逻辑结构相关的知识,希望对你有一定的参考价值。

本文已收录于专栏
🌳《画解数据结构》🌳

前言

  数据结构分为 逻辑结构物理结构。本章节就来具体讲一下什么是 逻辑结构,以及存在哪些逻辑结构。

一、概念

1、定义

  逻辑结构是指数据和数据之间的相互关系。

2、分类

  逻辑结构主要分为四类:集合结构、线性结构、树形结构、图形结构。

二、集合结构

1、定义

  集合结构是指数据元素之间属于同一个集合,且在集合中是无序的。各个数据元素之间是平等的,它们的共同属性就是 “属于同一个集合”。

2、画解

  如图所示的①②③④⑤⑥⑦这几个数据元素,属于同一个集合,但是元素之间没有任何的其他关系。

3、概念解释

1)集合
  这里的集合,是数学中的概念,是指具有某种特定性质的具体的、或者抽象的对象汇总而成的集体。其中,构成集合的这些对象称为该集合的元素。

三、线性结构

1、定义

  线性结构是指数据元素之间是一对一的关系。例如:顺序表 和 链表 都是线性结构。栈 和 队列 可以用顺序表实现,也可以用 链表实现。

2、画解

  如图所示的①②③④⑤⑥这几个元素一个接一个连接起来,形成一个线性结构。

3、概念解释

1)前驱
  线性结构的数据元素,除了头部元素以外,每个元素的前一个元素被称为前驱。

2)后继
  线性结构的数据元素,除了尾部元素以外,每个元素的后一个元素被称为后继。

四、树形结构

1、定义

  树形结构中的元素之间是一种一对多的层次关系。二叉树就是一种常见的树形结构。

2、画解

  如图所示的①②③④⑤⑥⑦⑧⑨⑩这几个元素由一些线段连接起来,假设有 n n n 个数据元素,且有 n − 1 n-1 n1 条线,并且它们依靠这些线互相连通,那么这个图就一定是一棵树。

五、图形结构

1、定义

  图形结构中的元素是多对多的关系。图分为有向图和无向图。

2、画解

以上是关于初识数据结构之逻辑结构的主要内容,如果未能解决你的问题,请参考以下文章

:文件管理 -- 初识文件管理文件的逻辑结构

C++ 不知树系列之初识树(树的邻接矩阵双亲孩子表示法……)

数据结构之线性表

数据结构之线性表

数据结构(Java描述)之线性表

FPGA基础之逻辑单元(LE or LC)的基本结构