数据结构
数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。
数据(Data)
数据是客观事物的符号表示,在计算机科学中指的是所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素(Data Element) :是数据的基本单位,在程序中通常作为一个整体来进行考虑和处理。一个数据元素可由若干个数据项(Data Item)组成。
数据项(Data Item) : 是数据的不可分割的最小单位。数据项是对客观事物某一方面特性的数据描述。
数据对象(Data Object) :是性质相同的数据元素的集合,是数据的一个子集。如字符集合C={‘A’,’B’,’C,…} 。
数据结构 :相互之间具有一定联系的数据元素的集合。
数据的逻辑结构 : 数据元素之间的相互关系称为逻辑结构。
数据操作 : 对数据要进行的运算
数据类型(Data Type):指的是一个值的集合和定义在该值集上的一组操作的总称。
数据的逻辑结构
集合:结构中数据元素之间除了“属于同一个集合"外,再也没有其他的关系
线性结构:结构中的数据元素存在一对一的关系
树形结构:结构中的数据元素存在一对多的关系
网状或者图状结构:结构中的数据元素存在多对多的关系
数据的存储结构
由数据元素之间的关系在计算机中有两种不同的表示方法——顺序表示和非顺序表示,从则导出两种储存方式,顺序储存结构和链式储存结构
顺序存储结构:用数据元素在存储器中的相对位置来表示数据元素之间的逻辑结构(关系),数据元素存放的地址是连续的
链式存储结构:在每一个数据元素中增加一个存放另一个元素地址的指针(pointer),用该指针来表示数据元素之间的逻辑结构(关系),数据元素存放的地址是否连续没有要求
索引存储方法:除建立存储结点信息外,还建立附加的索引表来标识结点的地址
数据的逻辑结构和物理结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的存储结构
常见数据结构
数组
把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组
两个特点:相同类型、有序
这个数组不等于PHP的数组。PHP数组本质是一个哈希表。通过数组实现