§1概论§1
1什么是数据结构数据结构(DataStructure):数据间的相互关系,即数据的组织形式
包括三方面的内容:(1)数据元素之间逻辑关系,即数据的逻辑结构(LogicalStructure)(2)数据元素及其关系在计算机存储器内的表示,即数据的存储结构(StorageStructure)(3)数据的运算,即对数据施加的操作
数据结构的定义:按某种逻辑关系组织起来的一批数据,按一定的存储表示方式把它们存储在计算机的存储器中,并在这些数据上定义了一个运算的集合
在不易混淆的情况下,常常将数据的逻辑结构简称为数据结构
·数据的逻辑结构有两大类:(1)线性结构逻辑特征是:有且仅有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前趋和一个直接后继
(2)非线性结构逻辑特征是:一个结点可能有多个直接前趋和直接后继
·数据的存储结构有四种基本方法(1)顺序存储方法该方法是把逻辑上相邻的结点存储在物理位置上相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现
称为顺序存储结构(SequentialStorageStructure)(2)链结存储方法该方法不要求逻辑上相邻的结点其物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的
称为链式存储结构(LinkedStorageStructure)
(3)索引存储方法该方法通常是在存储结点信息的同时,还建立附加的索引表,索引表中的每一项称为索引项、索引项的一般形式是:(关键字,地址),关键字是唯一标识一个结点的那些数据项
(4)散列存储方法该方法的基本思想是根据结点的关键字直接计算出该结点的存储地址
2算法算法:由若干条指令组成的有穷序列,它必须满足下述准则:(1)输入:具有0个或多个输入的外界量,它们是算法开始前对算法最初给出的量
(2)输出:至少产生一个输出,它们是同输入有某种关系的量