陕西国际商贸学院数据结构第三章 线性表.pdfVIP

  • 2
  • 0
  • 约1.49万字
  • 约 35页
  • 2019-05-05 发布于广东
  • 举报

陕西国际商贸学院数据结构第三章 线性表.pdf

第三章 线性表(Linear List ) • 线性表的定义 • 线性表的顺序存储 • 顺序表的基本算法实现 • 顺序表组织的查找表 • 顺序表的应用 3.1、线性表的定义 • 线性表(Linear List):具有相同类型的n个元素组 成的有限序列; • 线性表定义:  n ( 0 )个数据元素的有限序列,记作: L= (a , a , …, a ) 1 2 n 其中:a 是表中元素,a 是表头元素,a 是表尾元素, i 1 n n 是表长度,当n=0时称为空表。 • 线性结构的特点: – 除第一个元素外,其他每一个元素有一个且仅有一个 直接前驱。 – 除最后一个元素外,其他每一个元素有且仅有一个直 接后继。 线性表的数学定义 • 线性表数学定义:  线性表是由两个集合构成的一个二元组。记作: L= (D, R ) 其中:D={ a | a ∈ElementType, i=1,2,…,n n=1 } 叫数据集; i i R={ a , a | a , a ∈D, i=1,2,…, n-1}叫关系集; i i+1 i i+1 ElementType为某一个特定的数据对象集合; n为线性表长度;n=0时,线性表为空表。 • 线性表L= (D, R )的图形表示: 。。。 a1 a2 a3 an-1 an 图3-1 线性表结构的逻辑图 线性表的基本操作 • ADT (List ) 数据对象:元素集合;数据关系:二元组集合 数据操作:基本操作如下 – 初始化 Init_Sqlist – 求长 ListLength – 取元素 GetElem – 插入 ListInsert – 删除 ListDelete – 查找 LocateElem – 除了这些基本操作,还可以根据具体线性表的特性需要增加 一些其他操作。比如:线性表的遍历、排序等。 • 线性表例子: 比如学生成绩列表、学生花名册、通信录、图书目录等 3.2、线性表的顺序存储实现 • 1、使用顺序存储结构——顺序表(Sequential List ) – 利用顺序存顺结构实现逻辑结构,即利用元素之间的 相对位置表示他们之间的次序关系。相邻元素的物理 位置相邻。 0 1 2 n-1 maxLen-1 List: a a a … a ……… 1 2 3 n Length: n – 元素的位置关系:LOC(a )=LOC(a ) + (i-1)*L L为元素大 i 1 小 – 可以

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档