数据结构简单来说就是在计算机上处理某种储存,组织数据的方式,通过数据结构的整理归纳可以很好让计算机里的数据进行交互。在某种意义上,数据结构也可以说是算法的衍生物,因为很简单的算法可能包括很复杂的数据结构,换句话说,在合适的数据结构下可以构建出简单而又高效的算法。数据结构可分为两大类:逻辑结构和物理结构(也可以叫储存结构),物理结构是逻辑结构在计算机的储存形式,两者的关系非常紧密。除了两大类外又细分为集合结构,线性结构,树形结构,图形结构,顺序储存结构,链式储存结构六个小类。
逻辑结构
集合结构:数据元素在一个大类中彼此没有其他关系,相互平等也类似于数学中的集合;
线性结构:数据元素之间都是一对一的关系;
树形结构:数据元素之间存在一对一或者一对多,但它会有一个固定的根;
图形结构:数据元素之间全是多对多的关系,但它的关系可以是单向的。
物理结构(储存结构)
顺序储存结构:把按顺序排好数据元素连续存放在储存单元内,一人占一个位置逻辑顺序和物理顺序一致;
链式储存结构:数据元素经常比较混乱会添加新元素也会去除老元素,这个时候就得给他们提供一个排队系统,给他们分号跟着前面的数据元素更好的存入。
逻辑结构是面向问题的,而物理结构是面向计算机的,其基本目标是将数据及其逻辑关系储存到计算机的内存中
![](https://i-blog.csdnimg.cn/blog_migrate/6f752cb19d83717caa3addc2adc97e36.png)