数据结构是什么

数据结构图
数据结构,直白地理解,就是研究数据的存储方式。

我们都知道,数据存储只有一个目的,即为了方便后期对数据的再利用。那怎么利用才最高效,最有用呢?那肯定是要有规律的存储数据,让数据变得有规律,有序的,这样才是数据结构的核心。

数据结构大致包含以下几种存储结构:

  • 线形结构,可细分为数组、栈和队列、链表;
  • 结构,包括普通树,二叉树等;
  • 存储结构;

线形结构

线形结构其实就是由很多的点组成为的一条线,而这条线是有规律的。 一对一”关系的数据就可以使用线形结构来存储。

  1. 数组
    例如我们想要顺序的存储数据 {1,3,5,7,9},各元素依次排列,每个元素的前面和后边有且仅有一个元素与之相邻(除首元素和尾元素),随着元素的增加,它的下标也会逐渐的增加,下标从0开始,并且也要给他设置空间大小。
    数组图

  2. 栈和队列
    栈和队列是特殊的一种结构。
    栈的特点是:后进先出(LIFO-last in first out)的结构。
    队列的特点是:先进先出 (fisrt in first out,FIFO)的结构。

栈图

像图中所示,X1进栈,X2进栈…Xn,出来的时候就是Xn,Xn-1,Xn-2…。这就是栈的后进先出原则。

队列图

像图中所示,A先进去,那么就会先出来。这就是队列的先进先出原则。

  1. 链表
    链表在插入数据的时候位置是随机生成的,它是靠一个指针去寻找它的下一个数据块的。就如同一个个小学生都伸手去拉住下一个小学生的手,这样,看似毫无关系的数据块就建立了“依次排列”的关系,也就形成了链表。如图所示链表图

树存储结构

树存储结构适合存储具有“一对多”关系的数据

数存储结构图

如图所示,其中张平只有一个父亲,但他却有两(多)个孩子,这就是“一对多”的关系,满足这种关系的数据可以使用树存储结构。

图存储结构

图存储结构适合存储具有“多对多”关系的数据。

图存储图

如图所示,从 V1 可以到达 V2、V3、V4,同样,从 V2、V3、V4 也可以到达 V1,这就是“多对多”的关系,满足这种关系的数据可以使用图存储结构。

数据结构是一门学科,它教会我们“如何存储具有复杂关系的数据更有助于后期对数据的再利用”。