数据结构与算法---数据结构篇01---常见的数据结构简述
从逻辑结构和物理结构的角度来阐述
逻辑结构
可以分为一下四种:
集合结构
线性结构
树形结构
图形结构
a 集合结构,集合结构除了属于同一个集合外,元素与元素之间没有任何其它关系。
b 线性结构中的数据元素之间是一对一的关系
c 树形结构
树形结构中数据元素之间存在一种一对多的层次关系
d 图形结构
图形结构的数据元素是多对多的关系
PS:有没有发现这根数据库对象模型中一对一,一对多,多对多很像
物理结构
以上逻辑结构在计算机的存储形式在计算机中主要有两种存储形式
-
顺序存储结构
是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。
-
链式存储结构
是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。
数据元素的存储关系并不能反映其逻辑关系,因此需要用一个指针存放数据元素的地址,通过地址,就能找到相关联的数据元素的位置。
抽象数据类型
是指一组性质相同的值的集合及定义在此集合上的一些操作的总称
在C语言中,按照取值的不同,可以分为:
原子类型:是不可以再分的基本类型,包括整型,实型,字符型
结构类型:由若干个类型组合而成,是可以在分解的,如整型数组是由若干整型数据组成的。
抽象数据类型:是指一个数学模型及定义在该模型上的一组操作。一个抽象数据类型定义了:一个数据对象,数据对象中个数据元素之间的关系及对数据元素的操作。当下面向对象的语言也是抽象数据类型很好的表现。