讲到这儿,就必须要说一句了,数据结构的目的,最终就是为了更好更容易的处理数据,也因此,我们知道,数据结构(逻辑结构和物理结构)往往不是孤立的,而是和算法和索引技术息息相关的。
逻辑数据结构的种类有很多,比如说有集合结构,树形结构,图形结构,线性结构等等,这些不同的结构,在不同的应用场景下,产生着巨大的作用,比较经典的例如mysql数据库存储就采用了树形结构,java做数据处理的时候,经常采用集合结构等等。
这些数据结构,组成了计算机世界的绚丽多姿,但是与此同时,虽然已然简化了一部分数据之间的繁乱,但是仍然有着一定的门槛在阻挡着我们去认知它。
接下来,我们来一个一个地了解这些逻辑数据结构吧。
1.集合结构
======
集合结构,这个数据结构是指这个结构内的所有数据元素,唯一的特性是除了同属于一个集合,之外再也没有任何关系了。
比如说java中比较常见的List集合,我们使用这个集合,并且往这个集合中填充元素的时候,不必去关心这些元素之间有什么关系,而是只需要将这些元素存储到集合中就行,这就是典型的集合结构。
2.线性结构
======
一般来说,大部分数据结构都是线性结构,因此也有一种划分方法是将逻辑结构分为线性结构和非线性结构。
线性结构,是数据结构中的元素存在一对一的相互关系。一般来说,线性结构可以分为一般线性表,受限线性表(栈,队列,堆,串),推广线性表(一维数组,广义表)。
线性结构有唯一的首位,并且每个数据的上线衔接是唯一的。
线性表在不同的存储结构下体现不同,顺序存储结构下,体现为顺序表,链表存储结构下,单向链表,双向链表等都是线性表。
3.树形结构
======
数据结构中的元素存在一对多的相互关系;
树结构是一类重要的非线性数据结构,其中以二叉树最为常用,树是以为分支关系定义的层次结构,它为计算机应用中出现的具有层次关系或者分支关系的数据提供了一种自然的表示方法,用树结构描述的信息模型在客观世界普遍存在。
树形结构一般分为一般树和二叉树。
4.图形结构
======
数据结构中的元素存在多对多的相互关系。
最后
如果觉得本文对你有帮助的话,不妨给我点个赞,关注一下吧!
赞,关注一下吧!**
[外链图片转存中…(img-BgxEQgpU-1714373547579)]
[外链图片转存中…(img-goR4yhcw-1714373547579)]