1.线性表的定义及基本操作
1.1什么是线性表?
有若干个同类型元素组成的序列(0个或多个)。
定义:线性表
L = (a0, … , ai-1, ai , ai+1 , … , an-1)
其中:L为表名,ai (0≤i≤n-1)为数据元素;n为表长。n>0时,L为非空表;否则为空表,记为Φ 。
1.2线性表的逻辑结构和特征
形式化描述:线性表
L= (D, R)
D:数据元素集合,R:D上的关系集合,其中:
D={ai | ai∈datatype, i = 0, 1 , … , n-1, n≥0}
R={<ai, ai+1> | ai, ai+1∈D, 0≤i≤n-2}
关系符<ai, ai+1>:有序对,表示任意相邻的两个元素之间的一种先后次序关系
ai是ai+1的直接前驱,ai+1是ai的直接后继。
线性表的特征:对非空表, a0是表头,无前驱;an-1是表尾,无后继;其它的每个元素ai有且仅有一个直接前驱(ai-1)和一个直接后继(ai+1)。
1.3线性表的抽象数据类型表示
ADT List {
数据元素集:D={ai|ai∈datatype, i = 0, 1, 2, …… , n-1, n≥0}
数据关系集:R={<ai, ai+1>|ai, ai+1∈D