网站大量收购闲置独家精品文档,联系QQ:2885784924

数据结构(C语言描述)课件.ppt

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

数据结构辅导 李青山 西安电子科技大学 5/faculty/liqingshan qshli@ 029-8820-4611 课程内容框架 1.2基本概念和术语 1.2基本概念和术语(续) 1.3算法和算法分析 1.3算法和算法分析(续) 1.3算法和算法分析(续) 1.3算法和算法分析(续) 第一部分 线性数据结构 2.线性表 3.栈、队列和串 2.1线性表的逻辑结构 在数据元素的非空有限集中 存在唯一的一个被称作“第一个”的数据元素; 存在唯一的一个被称作“最后一个”的数据元素; 除第一个之外,集合中的每一个数据元素均只有一个前驱; 除最后一个之外,集合中每一个数据元素均只有一个后继。 2.1线性表的逻辑结构(续) 线性表:n个数据元素的有限序列(线性表中的数据元素在不同环境下具体含义可以不同,但在同一线性表中的元素性质必须相同)。 表长:线性表中元素的个数n(n=0)。 空表:n=0时的线性表称为空表。 位序:非空表中数据元素 ai 是此表的第 i 个元 素,则称 i 为 ai 在线性表中的位序。 2.1线性表的逻辑结构(续) ADT List { 数据对象:D={ai | ai属于ElemSet, i = 1,2, … ,n, n=0} 数据关系:R1={ ai-1, ai | ai-1, ai属于D, i =2,3, …, n} 2.2线性表的顺序存储结构 内涵: 线性表的顺序存储指用一组地址连续的存储 单元依次存储线性表的数据元素。这称为顺序表。 特点: * 存储单元地址连续(需要一段连续空间) * 逻辑上相邻的数据元素其物理位置也相邻 * 随机存取 * 存储密度为大(100%) 2.2线性表的顺序存储结构(续) 2.2线性表的顺序存储结构(续) (a1,…, ai, ai+1,…, an) 表长为n 2.2线性表的顺序存储结构(续) (a1,…, ai, ai+1,…, an) 表长为n 2.3线性表的链式存储结构 优点: * 不需要额外空间来存储元素之间的关系 * 可以随机存取任一元素 2.3线性表的链式存储结构(续) 内涵: 线性表的链式存储指用任意的存储单元存放线性表中的元素,每个元素与其前驱和(或)后继之间的关系用指针来存储。这称为链表。 2.3线性表的链式存储结构(续) 单链表中,如果每个结点中只包含一个指域, 称这种链表为线性链表或单链表。 单链表可由头指针唯一确定。 2.3线性表的链式存储结构(续) 用高级语言中的指针类型描述线性表的链式存储 2.3线性表的链式存储结构(续) (a1,…, ai, ai+1,…, an) 表长为n 2.3线性表的链式存储结构(续) (a1,…, ai, ai+1,…, an) 表长为n 教学内容---第三章 2.线性表 3.栈、队列和串 3.1 栈、队列和串的逻辑结构 栈和队列是操作受限的线性表 栈和队列的“操作受限”指操作位置受限 串的特殊性在于线性表中数据元素只能是字符 串一般以子串为操作单位 栈、队列和串具有一般线性表共性的特点 特殊的线性表反而应用面更宽 3.1 栈、队列和串的逻辑结构(续) 栈(Stack):限定仅在表尾进行插入或删除操作的线性表。 栈顶(top) :插入或删除的表尾端。 栈底(bottom) :表头端。 空栈:空表。 3.1 栈、队列和串的逻辑结构(续) ADT Stack { 数据对象:D={ai | ai属于ElemSet, i = 1,2, … ,n, n=0} 数据关系:R1={ ai-1, ai | ai-1, ai属于D, i =2,3, …, n}// a1 为栈底, an 栈顶 3.1 栈、队列和串的逻辑结构(续) 队列(Queue):限定仅在表的一端进行插入,而另一端进行删除操作的线性表。 队尾(rear) :允许插入的一端。 队头(front):允许删除的一端。 空队:空表。 3.1 栈、队列和串的逻辑结构(续) ADT Queue { 数据对象:D={ai | ai属于ElemSet, i = 1,2, … ,n, n=0} 数据关系:R1={ ai-1, ai | ai-1, ai属于D, i =2,3, …, n}// a1 为队头, an 队尾 3.1 栈、队列和串的逻辑结构(续) 串(String):由零个或多个字符组成的有限序列。S=‘a1a2…an’ 串名、串值 串长 空串、空格串 子串:串中任意连续的字符组成的子序列 主串: 字符在串中的位置、子串在串中的位置 串相等 3.1 栈、队列和串的逻辑结构(续) ADT Sring { 数据对象:D={ai | ai属于CharacterSet, i = 1

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档