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

栈的顺序存储.PPT

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

数据结构学位考 复习课(1) 主要内容: 1.第一部分 概述 2.第二部分 线性表、栈、队列 第一部分:数据结构与算法的基本概念 考核内容及要求: 理解算法、算法正确性、复杂性的概念; 了解算法的时间与空间复杂性级别; 重点掌握数据类型、数据结构和表示、实现的概念; 掌握抽象数据类型的说明、高级语言对抽象数据类型的支持。 基本概念和术语 数据(Data): 数据元素(Data Element): 数据的基本单位,计算机中通常作为一个整体来考虑,如一棵树中的一个结点、一个图中的一个结点。 一个数据元素可以有若干个数据项(Data Item)组成。 数据对象(Data Object):性质相同的数据元素的集合 数据结构:数据元素之间的关系——结构 四种基本结构 集合 线性结构 树形结构 图状结构/网状结构 数据结构的形式定义: 一个二元组: Data_Structure=(D,S) 其中:D是数据元素的集合,S是D上的关系集合 数据的逻辑、物理(存储)结构 逻辑结构:数据元素之间的逻辑关系 物理结构:数据元素在计算机中的存储方法(表现和实现) 数据结构的分类: 按照逻辑结构的不同分为:集合、线性结构、树状结构、网状结构 按照物理结构的不同分为: 顺序结构:利用在存储器中的物理关系来表示逻辑关系。 链式结构:用在存储器中附加指针的方式来表示逻辑关系。 算法:对特定问题求解步骤的一种描述,是指令的有序序列 算法的五个特性:有穷性、确定性、可行性、输入、输出 算法设计的要求:时间复杂度,空间复杂度 时间复杂度:算法执行时间随规模增长而增长的趋势 T(n)=O(f(n)) f(n)算法规模,T(n)称算法复杂度 估算办法:以算法中重复执行的次数作 为算法时间复杂度的依据。 三种最常见时间复杂度: O(1) 常量级 O(n) 线性级 O(n2) 平方级 算法的空间复杂度 S(n)=O(f(n)) 算法执行过程中所需的最大空间 估算方法:输入数据所占空间+ 程序所占空间+ 辅助变量所占空间 第二部分 线性表、栈、队列 考核内容及要求: 熟练掌握顺序分配、链接分配的表示及实现方法; 熟练掌握各种链表:单链、双链、多链、循环链表; 理解栈、队列、双向队列的顺序、链式表示及其算法复杂度分析; 熟练掌握表达式计算原理。 1. 线性表的顺序表示和实现 线性表的存储结构:顺序存储、链接存储 顺序存储:用一组地址连续的存储单元依次存储线性表的数据元素。 顺序表的特点 (1)利用数据元素的存储位置表示线性表中相邻数据元素之间的前后关系,即线性表的逻辑结构于存储结构(物理结构)一致; (2)在访问线性表时,可以利用上述给出的数学公式,快速计算任何一个数据元素的存储地址。即访问每个数据元素所花费的时间相等。 (3)这种存取元素的方法被称为随机存取法。使用这种存取方法的存储结构被称为随机存储结构。 2. 线性表的链式表示和实现 顺序表的局限:插入、删除时要移动大量的元素,耗费大量时间。 链式表示:用一组任意的存储单元存储线性表 存储单元不要求连续:物理结构不反应逻辑结构 不可以随机存取,但插入和删除方便 需要两个域:一个表示数据本身;一个表示数据元素间的先后关联。——一个结点。 结点中表示关联的部分为指针域,内部存放指针或链。n个结点链接成一个链表。 线性链表 线性链表的物理存储结构 (Zhao,Qian,Sun,Li,Zhou,Wu,Zheng,Wang) 线性链表(单链表)的定义: typedef struct LNode{ ElemType data; struct Lnode *next; }Lnode, *LinkList 循环链表 循环链表:线性表的另一种链式存储结构。 双向链表 每一个结点有两个指针域:一个指向直接后继;另一个指向直接前驱。 双向循环链表 3.栈的表示和实现 栈的表示: (1)顺序栈:栈的顺序存储 (2)链栈:栈的动态存储 顺序栈的表示和实现 顺序表示 #define STACK_INIT_SIZE 100; #defin

文档评论(0)

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

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

1亿VIP精品文档

相关文档