- 1
- 0
- 约2.03万字
- 约 94页
- 2018-03-15 发布于河南
- 举报
计算09赵威
第二章 线性表 本章基本内容: 线性表的逻辑结构定义和各种存储结构的描述方法, 在线性表的两类存储结构上如何实现基本运算。 学习要点: 1、了解线性表的逻辑结构特性是数据元素之间存在着 线性关系,在计算机中表示这种关系的不同方法 得到两类不同的存储结构。 2、熟练掌握这两类存储结构的描述方法,以及循环链表、 双向链表的特点等。 3、熟练掌握顺序表、线性链表实现的基本操作:如插入、删除等算法。 §2.1 线性表概念及基本操作 §2.2 线性表的顺序存储和实现 §2.3 线性表的链式存储和实现 2.3.1 线性链表 2.3.2 循环链表 2.3.3 双向链表 §2.1 线性表的概念 一、线性表的逻辑结构 线性表是n 个类型相同数据元素的有限序列, 通常记作(a1, a2, a3, …, an )。 例1、数学中的数列(11,13,15,17,19,21) 例2、英文字母表(A, B, C, D, E? Z )。 例3、某单位的电话号码簿。 §2.2 线性表的顺序存储和实现 一、线性表的顺序存储结构——顺序表 1、线性表的顺序存储结构 2、顺序表的类型定义 二、顺序表的基本操作算法 三、利用基本操作实现线性表的其他操作 改写算法2.3为C语言: main( ) {SqList *Lp; Lp=(Sqlist *)malloc(sizeof(SqList)); InitList_Sq(Lp); …… } InitList_Sq(SqList *L) { L-elem =(int *)malloc(LIST_INIT_SIZE*sizeof(int)); if(!L-elem)exit(OVERFLOW); L-Length = 0; L-Listsize = LIST_INIT_SIZE; return OK; } §2.3 线性表的链式存储和实现 §2.3.1 线性链表 单链表插入操作 线性链表小结 §2.3.2 循环链表 §2.3.3 双向链表 第二章 线性表小结 内容: 顺序存储结构——顺序表 链式存储结构——线性链表、循环链表、双向链表 掌握: 在这两种存储结构下如何实现线性表的基本操作。 目标: 通过数据结构课程的学习,很好地理解各种存储结构是如何存储和表达数据对象的有关信息,以及各种存储结构下操作的特点。 取元素操作算法: Status GetElem_L(LinkList L, int i, ElemType e){ //L为带头结点的单链表的头指针。 //当第i个元素存在时,其值赋给e并返回OK,否则返回ERROR p=L-next; j=1; //初始化,p指向首元结点,j为计数器 while(p ji){ //顺指针向后查找,直到p指向第i个元素或p为空 p=p-next; ++j; } if (!p||ji) return ERROR; //第i个元素不存在 e = p-data; //取第i个元素 return OK; } //GetElem_L 算法 2.8 3、插入操作 ListInsert_L(LinkList L, int i, ElemType e) 功能:在线性链表L的第i个元素结点之前插入一个新元素结点; 插入操作图示: 插入前 插入后 ai-1 ai a2 a1 ai+1 n an L ai-1 ai a2 a1 ai+1 n an e L a b H d c d c c d c d 插入操作主要步骤:1)查找链表L的第 i-1个元素结点;2)为新元素建立结点;3)修改第 i-1个元素结点的指针和新元素结点指针完成插入; 插入操作算法:Status ListInsert_L(LinkList L, int i, ElemType e){ //在带头结点的线性链表L中第i个元素结点之前插入元素e p=L; j=0 while (p ji-1){p = p-next; ++j;} //寻找第i-1个元素结点 if(!p||jj-1) return ERROR; // i小于1或者大于表长 s=(LinkList) malloc (sizeof(LNode)
您可能关注的文档
- 第二章基因工程常用技术.ppt
- 二次函数y=a(x+h)2的图象.doc
- 第五章电流表.ppt
- 文明创建服务标准机制.doc
- 对俄电商网站模板开发需求.doc
- 工程数学补考试卷.doc
- 优秀人才申报表.doc
- 2012海淀英语中考一模试卷.doc
- 2009广告制作要求与指导.doc
- 追寻语文的魅力.doc
- 中国国家标准 GB/Z 37551.300-2026海洋能 波浪能、潮流能及其他水流能转换装置 第300部分:河流能转换装置发电性能评估.pdf
- GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法.pdf
- 中国国家标准 GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法.pdf
- 《GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法》.pdf
- 中国国家标准 GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义.pdf
- GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义.pdf
- 《GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义》.pdf
- 中国国家标准 GB/T 4937.37-2025半导体器件 机械和气候试验方法 第37部分:采用加速度计的板级跌落试验方法.pdf
- 《GB/T 4937.10-2025半导体器件 机械和气候试验方法 第10部分:机械冲击 器件和组件》.pdf
- 中国国家标准 GB/T 44937.2-2025集成电路 电磁发射测量 第2部分:辐射发射测量TEM小室和宽带TEM小室法.pdf
原创力文档

文档评论(0)