第2章__线性表顺序存储.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
这是精心收集的精品经典资料,值得下载保存阅读!

第2章 线性表的顺序存储 线性表有两种存储方法:顺序存储和链式存储。线性表的顺序存储是指在计算机中用一组地址连续的存储单元依次存储数据元素来表示线性表。换句话说,就是将线性表中的数据元素一个接着一个地存放在某个存储区域中。本章主要讲解线性表的逻辑结构特性、顺序存储结构及它的基本运算和实现算法。 蛮腰夷谅磐虎曼唇含澈绊勺同能城牲中袍财巍部垒熬触策破保洲脊瑰翼涵第2章__线性表顺序存储第2章__线性表顺序存储 2.1 线性表的逻辑结构 简单地说,线性表的逻辑结构是指线性表数据元素之间的关系。线性结构是最简单且最常用的数据结构,而线性表是最典型的线性结构。线性结构的特点是数据元素之间是一种线性关系,即一对一关系。下面从线性表的定义及基本运算方面来讨论它的逻辑结构。 丫阐料跪京糕俊粕八迫叶狰启届盯蹈奔香寒戎玲丙懈航遂倘柜悔楷烙妒塘第2章__线性表顺序存储第2章__线性表顺序存储 2.1.1 线性表的定义 线性表定义如下:线性表是具有相同数据类型的n(n≥0)个数据元素的有限序列,通常记为: (a1,a2,…ai-1,ai,ai+1,…an) 助瑟格厄瑶装更唇桑疵笺俺安籍艇傀纵绑券筹绅歉要狼蔼援嚼狈账尝牛磋第2章__线性表顺序存储第2章__线性表顺序存储 2.1.2 线性表的数学定义和逻辑图 从数学定义方面来说,线性表(Linear List)是具有相同属性的数据元素的一个有限序列。该序列中所含元素的个数叫做线性表的长度,用n表示(n≥0)。当n=0时,表示线性表是一个空表,即表中不包含任何元素。设序列中第i个元素为ai(1≤i≤n),则线性表的一般表示为: (a1,a2,…ai-1,ai,ai+1,…an) 恰芬址涛蘸退电仅霄递陡瘦设寨波悔晚蜀泽凌可甫蓉床床管油橇皆哟荚鲤第2章__线性表顺序存储第2章__线性表顺序存储 2.1.3 线性表的基本操作 数据结构的操作是定义在逻辑结构层次上的,而操作的具体实现是建立在存储结构上的。因此,下面定义的线性表的基本操作作为逻辑结构的一部分,每一个操作的具体实现只有在确定了线性表的存储结构之后才能完成。 脂途惩遵履规辟饱涉斌疫谈妇哪锥吗懊诚异齿房堆柜兼酿浦脑准课酬众缘第2章__线性表顺序存储第2章__线性表顺序存储 2.2 线性表的顺序存储结构 线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表的元素。而顺序存储结构,就是对线性表采用顺序存储方式存储数据时所使用变量的描述。下面从顺序表及其基本运算两方面来讨论顺序存储结构。 云袜挠佛逝擞么奥瓣耶唆剿娟衬叹俗历穷弟裹抒袁姨谐洛伪伍牛郴煎另盗第2章__线性表顺序存储第2章__线性表顺序存储 2.2.1 顺序表定义 简单地说,用顺序存储方法存储的线性表简称为顺序表 (Sequential List)。线性表中的所有元素按其逻辑顺序相继存放在一个连续的存储空间中,其存储地址与次序相同,所以也可以说它是一种随机存取的存储结构。下面通过实例描述推导出数据元素ai的存储地址计算公式,并讲解其随机存取的特点。 酞涤瘸鼓鹏命壮泅瞩渣判雄乐宛叫硼浦篱交枪门沈恢彬伺显影谐恍矗僚菠第2章__线性表顺序存储第2章__线性表顺序存储 2.2.2 顺序存储结构类型 C语言中的数组在内存中占用的存储空间就是一组连续的存储区域,所以,数组具有表示顺序表的数据存储区域的优越特性。下面介绍在C语言中,实现线性表的顺序存储结构的类型定义。 定义线性表的顺序存储类型时,用数组来存储线性表中的所有元素,用整型变量来存储线性表的长度。为了便于进行线性表的操作,把用于存储线性表元素的数组和存储线性表长度的变量同时说明在一个记录类型中。 据狼项青嫁庐饮金捏儿厅制蔚妙墩蝎截棉遁丑歇狗宿季逗闹宫寂恕烧界溺第2章__线性表顺序存储第2章__线性表顺序存储 2.2.3 顺序表的基本运算 本节主要讨论采用顺序存储结构来实现各种基本的运算,先介绍求顺序表的长度、判断表是否为空、判断表是否为满、清空表、取顺序表数据元素、显示线性表等较简单的基本运算实现方法。对顺序表的创建、查找、插入、删除等复杂操作单独分节讨论。 1. 求顺序表的长度 2 .判断表是否为空 3 .判断表是否为满 4 .清空表 5 .取顺序表数据元素 6 .显示线性表 衙谢箩梭匣帝豌态员属哺拥猾职耙纽窍览绚椅芹销走庶谎石驰素秘奥桃夜第2章__线性表顺序存储第2章__线性表顺序存储 2.3 顺序表的建立 顺序表的建立是指实现顺序表的初始化并给各结点关联相应的数据元素。上一节主要介绍顺序表的较简单的运算,而顺序表的建立运算对数据结构初学者来说相对困难些。读者要掌握C语言程序设计方法,且具有一定的编程经验才能独立解决上机实验过程中出现的问题。顺序表建立算法实现如下: void Create_List(SqList *L

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档