线性表是最很简单也是最重要数据结.pdfVIP

  • 1
  • 0
  • 约1.97万字
  • 约 112页
  • 2019-02-22 发布于湖北
  • 举报

线性表是最很简单也是最重要数据结.pdf

第2章线性表 概述 • 线性表是最很简单也是最重要的数据结 构,它是线性结构。所以我们学习数据 结构从线性表开始。从本章开始到第四 章都是讨论线性。是整个数据结构的基 础 • 按逻辑结构、存储结构、算法设计这三 个顺序进行分析。 2.1线性表的逻辑结构 线性表(Linear List )是由n (n ≥0 )个数据元素 (结点)a ,a ,…,a 组成的有限序列。 1 2 n ①数据元素的个数n定义为表的长度(n=0 时称为 空表)。 ②将非空的线性表(n >0 ) 记作:(a ,a ,…,a ) 1 2 n ③数据元素ai (1≤i≤n )只是个抽象符号,其具 体含义在不同情况下可以不同。 线性表的逻辑结构图示 a1 ai an 线性表的例子 【例1】英文字母表(A ,B ,…,Z )是线性表,表中每 个字母是一个数据元素(结点) 【例2 】一副扑克牌的点数(2 ,3,…,10,J ,Q,K , A )也是一个线性表,其中数据元素是每张牌的点数和 花色 【例3 】学生成绩表(见概论中表1.1)中,每个学生及其 成绩是一个数据元素,其中数据元素由学号、姓名、 各科成绩及平均成绩等数据项组成。 线性表的特征 1. 有且仅有一个开始结点a ,没有直接前趋, 1 有且仅有一个直接后继a2 ; 2. 有且仅有一个终结结点a ,没有直接后继, n 有且仅有一个直接前趋an-1 ; 3. 其余的内部结点ai (2 ≤i≤n-1 )都有且仅有 一个直接前趋ai-1和一个ai+1 。 常见的线性表的基本运算 • 常见的基本运算有:初始化,求表长,求第i个 结点,查找,插入和删除等操作。为了尽可能 地比较准确地描述些运算过程,我们采用类似 于函数的形式对它进行描述。 • 这些基本运算并不是凭空想出来,而是根据实 际应用总结出来的。 线性表的ADT表示 ADT LinearList { 数据元素:D={a | a ∈D ,i=1,2,3…n,n ≥0,D 某一数 i i 0 0 据对象} 逻辑结构:R={a ,a , a , a ∈D ,i=1,2,…,n-1} i i+1 i i+1 0 基本操作: 1.InitList (L ) 操作前提:L为一个未初始化的线性表。 操作结果:将L初始化为空表。 构造一个空的线性表L ,即表的初始化。 2. DestroyList(L) • 操作前提:线性表L 已存在。 • 操作结果:将L销毁。 3. ClearList(L) • 操作前提:线性表L 已存在。 • 操作结果:将L置空 4. IsEmptyList(L) • 判断L是否为空表。如为空返回true ,否 则返回faslse • 前提:L 已存在,

文档评论(0)

1亿VIP精品文档

相关文档