1 / 46
文档名称:

线性表的链式存储结构.ppt

格式:ppt   大小:206KB   页数:46页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

线性表的链式存储结构.ppt

上传人:wz_198613 2017/8/29 文件大小:206 KB

下载得到文件列表

线性表的链式存储结构.ppt

文档介绍

文档介绍:线性表的链式存储结构
线性表顺序存储结构的特点
它是一种简单、方便的存储方式。它要求线性表的数据元素依次存放在连续的存储单元中,从而利用数据元素的存储顺序表示相应的逻辑顺序,这种存储方式属于静态存储形式。
暴露的问题
l 在做插入或删除元素的操作时,会产生大量的数据元素移动;
l 对于长度变化较大的线性表,要一次性地分配足够的存储空间,但这些空间常常又得不到充分的利用;
l 线性表的容量难以扩充。
1
线性表的链式存储结构
线性表的链式存储结构是指用一组任意的存储单元(可以连续,也可以不连续)存储线性表中的数据元素。为了反映数据元素之间的逻辑关系,对于每个数据元素不仅要表示它的具体内容,还要附加一个表示它的直接后继元素存储位置的信息。假设有一个线性表(a,b,c,d),可用下图2所示的形式存储:
2
线性表链式存储结构示意图
3
术语
表示每个数据元素的两部分信息组合在一起被称为结点;
其中表示数据元素内容的部分被称为数据域(data);
表示直接后继元素存储地址的部分被称为指针或指针域(next)。
单链表简化为下图描述形式
head
d ^ ^
c
b
a
单链表结构示意图
4
其中,head是头指针,它指向单链表中的第一个结点,这是单链表操作的入口点。由于最后一个结点没有直接后继结点,所以,它的指针域放入一个特殊的值NULL。NULL值在图示中常用(^)符号表示。
带头结点的单链表
为了简化对链表的操作,人们经常在链表的第一个结点之前附加一个结点,并称为头结点。这样可以免去对链表第一个结点的特殊处理。(头结点中数据域根据需要存放一些便于操作的信息,如元素个数等;或不存放任何信息。其引入使得所有链表(即使是空表)的值都不为NULL。)如下图所示:
head
d ^
c
b
a
带头结点的单链表结构示意图
5
链式存储结构的特点
(1)线性表中的数据元素在存储单元中的存放顺序与逻辑顺序不一定一致;
(2)在对线性表操作时,只能通过头指针进入链表,并通过每个结点的指针域向后扫描其余结点,这样就会造成寻找第一个结点和寻找最后一个结点所花费的时间不等,具有这种特点的存取方式被称为顺序存取方式。
6
在C语言中,实现线性表的链式存储结构的类型定义
typedef strcut LNode{ //结点类型
ElemType data;
struct LNode *next;
}LNode;
typedef struct{ //链表类型
LNode *head;
}LinkList;
7
典型操作的算法实现
1. 初始化链表L:创建带头结点的空链表。
int InitList(LinkList *L)
{
L->head=(*LNode)malloc(sizeof(LNode));
//为头结点分配存储单元
if (L->head) {L->head->next=NULL; return OK;}
else return ERROR ;
}
8
2. 销毁链表L:删除链表中包括头结点在内所有结点。
void DestoryList(LinkList *L)
{
LNode *p;
while (L->head){ //依次删除链表中的所有结点
p=L->head; L->head=L->head->next;
free(p);
}
}//从头结点开始删,直到删完为止。
9
3. 清空链表L :删除链表中除头结点外的所有结点。
void ClearList(LinkList *L)
{
LNode *p;
while (L->head->next){
p=L->head->next; //p指向链表中头结点后面的第一个结点
L->head->next=p->next; //删除p结点
free(p); //释放p结点占据的存储空间
}
}//从头结点后的第一个结点开始删,直到删完为止。
10

最近更新

山东省邹平一中人教版高三12月模块考试(数学.. 9页

人教A版高二必修第二册8.5空间直线、平面的平.. 25页

北师大版高三数学 选择性必修第二册 综合测评.. 8页

17 盼 同步练习试题(含答案) 5页

三年级上语文试题-盐都区期末考试试卷及答案+.. 7页

部编版语文五年级上册期末综合复习试题(含答.. 8页

二年级下册语文单元测试-第六单元|人教(部.. 3页

一年级下册语文同步练习-8+静夜思|人教部编版.. 3页

绿地博思堂南京绿地广场综合体前期策划报告18.. 186页

一年级语文上试卷——第六单元综合测试卷(含.. 4页

六年级语文上册最后一头战象一课一练人教新课.. 2页

苏科版数学七年级下册 9.1 单项式乘单项式 同.. 6页

安徽省马鞍山市含山中学人教版高二上学期期末.. 8页

高一语文人教必修三必修四默写填空 2页

湖南省部分地区部编版高一上学期期中语文试题.. 10页

黑龙江哈尔滨虹桥中学人教版下学期期中测试八.. 10页

北师大版九下英语期末练习 专项4 条件状语从句.. 4页

人教版八年级英语阅读能力试题 5页

早产儿eugr与营养支持 28页

上海市虹口区2025年中考二模物理试题附答案 8页

精编五年级课本剧完璧归赵剧本 3页

invt英威腾CHF100A变频器说明书 4页

(整理)中性粒细胞碱性磷酸酶 10页

2024年人教版四年级数学下册期中试卷【带答案.. 7页

《打支山歌过横排》说课稿 9页

2023年全国高考数学(新高考1卷)真题试卷 4页

单片机寻迹小车模板 18页

第二轮复习:解三角形(公开课)(课堂ppt) 22页