暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

陆老师的《数据结构》课堂——第2章线性表的教学目标和 §2.1 线性表类型定义

爱上数据结构 2019-03-04
164

同学们好,欢迎进入陆老师的《数据结构》课堂。



这节课我们来学习第二章线性表的教学目标和第1小节线性表的类型定义。

    线性表是最简单也是最常用的一种数据结构类型,本章将分别从线性表的逻辑结构、存储结构、运算及算法以及应用这四个方面来介绍线性表。

 本章分四这小节介绍。

2.1 线性表的类型定义

2.2 线性表的顺序表示和实现

2.3 线性表的链式表示和实现

        2.3.1 线性链表

        2.3.2 循环链表

        2.3.3 双向链表

2.4 线性表的应用举例

 

我们来学习第2章第1节:线性表的类型定义。

一、线性表的逻辑定义

线性表——是n(0)个数据元素a1a2,…an的有限序列;表中每个元素(除第一个和最后一个外),有且仅有一个直接前趋,有且只有一个直接后继。

  即线性表或为一个空表(n=0),或者就是n个元素以这样的线性形式排列

 a1a2,…, ai-1aiai+1,…,an   n>0

这里的n就是线性表中的数据元素个数,称为线性表的长度(简称表长)。

注意:这里的ai只是数据元素的一个抽象符号,其具体含义在不同的情况下可以不同。

例: 26个英文字母组成的字母表

              ABCDEF,…,Z

     显然就是一个线性表,只是每个数据元素都是一个字母。在这个字母表中,第一个元素A无直接前趋,最后一个元素Z无直接后续,其余每个元素,有且仅有一个直接前趋,有且只有一个直接后继。比如E,它的直接前趋肯定是D,它的直接后继肯定是F

 

再看一个例子:一张学生档案表,它也是一个线性表,只是这里的每个数据元素是由若干个数据项组成的,标识一个学生的信息占据一行,王小林这行就是第1个数据元素a1,第二行就是a2,以此类推。这个档案表实际也是n个元素的一个线性排列,因此也是一个线性表。(a1a2,…, ai-1aiai+1,…,an

注意:由若干个数据项组成的数据元素通常也称为记录,

      含大量记录的线性表通常也称为文件。

二、线性表的逻辑结构特征

    在这里再强调一下线性表的特点,线性表的逻辑结构特征实现上也就是线性结构的基本特征。

对于任何一个非空的线性表,都有下面三个基本特征:

     ①有且仅有一个起始结点a1(通常称为首元素),它没有直接前趋,但有且仅有一个直接后继a2 

②有且仅有一个终端结点an (通常称为尾元素),它没有直接后继,但有且仅有一个直接前趋an-1
     ③其余的内部结点ai2in-1)都有且仅有一个直接前趋ai-1和一个直接后继ai+1

这三点实际上就是线性结构的:一对一的关系!

所以线性表是一种典型的线性结构。


文章转载自爱上数据结构,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论