收藏 分享(赏)

第5章数据结构基础 PPT课件.ppt

上传人:微传9988 文档编号:3357818 上传时间:2018-10-18 格式:PPT 页数:46 大小:975KB
下载 相关 举报
第5章数据结构基础 PPT课件.ppt_第1页
第1页 / 共46页
第5章数据结构基础 PPT课件.ppt_第2页
第2页 / 共46页
第5章数据结构基础 PPT课件.ppt_第3页
第3页 / 共46页
第5章数据结构基础 PPT课件.ppt_第4页
第4页 / 共46页
第5章数据结构基础 PPT课件.ppt_第5页
第5页 / 共46页
点击查看更多>>
资源描述

1、计算机技术应用基础,第5章 数据结构基础,5.1 引言 5.2 线性结构 5.3 树形结构 5.4 内部排序 5.5 检索(查找),5.1 引言,5.1.1 什么是数据结构 数据之间的相互关系 5.1.2 数据的逻辑结构 5.1.3 数据的存储结构 5.1.4 数据的运算 检索、插入、更新、排序,5.1.2数据的逻辑结构,集合:无其他关系 线性结构:一对一 树形结构:一对多 图形结构:多对多,5.1.3 数据的存储结构,数据的逻辑结构在计算机存储器中的实现,也称物理结构 顺序映射方式 链接映射方式 索引映射方式 散列映射方式,5.2 线性结构,5.2.1 线性表 5.2.2 栈 5.2.3 队

2、列 5.2.4 链表,5.2.1 线性表,线性列表是一个列表,列表内每个元素都有唯一的后继元素(除去最后一个元素)。线性表具有顺序结构。 向量(一维数组):类型相同、有序,插入,删除,5.2.2 栈,栈是一种线性表,对栈的添加和删除只能在“栈顶”进行。,1、入栈push,入栈在栈顶添加新的元素,入栈后,新的元素成为栈顶。如果没有足够的空间,栈处于溢出状态,不能添加元素。,2、出栈pop,出栈将栈顶元素移走并返回给用户。当最后一个元素被删除后,栈为空,当栈为空时不能再执行出栈操作。,5.2.3 队列,队列也是一种线性表。数据只能在称为“尾部”的一端插入,只能从称为“头部”的一端删除。,1、入列,

3、入列enquene操作将数据插入队尾,新元素成为队尾。空间用完后,不能插入数据。,2、出列,出列dequeue从队首移出数据并返回给用户。队列中没有数据时,不能执行出列。,5.2.4 链表,1、链接栈,2、链式队列,5.3 树形结构,5.3.1 树及其遍历 5.3.2 二叉树 5.3.3 遍历二叉树,5.3.1 树及其遍历,树包括一组有限的元素,这些元素称为结点;同时包括一组有向线段,用来连接结点,称为分支。 一个结点的子树个数称为该结点的度数,5.3.2 二叉树,二叉树是结点的有限集合,此集合或为空集,或为由一个根结点和两棵互不相交的称为左右的二叉树构成 深度:树中结点的最大层次 平衡因子:

4、二叉树中任一结点的右子树与左子树的深度之差 平衡二叉树:所有结点的平衡因子的绝对值不大于1的二叉树,5.3.3 遍历二叉树,遍历二叉树是按照预定的顺序处理每一个节点且仅处理一次。 先根顺序遍历、中根顺序遍历、后根顺序遍历,先序遍历,在先序遍历(DLR)中,首先访问根,再访问左子树,最后访问右子树。ABCDEF,中序遍历,在中序遍历(LDR)中,首先处理左子树,再访问根,最后访问右子树。CBDAEF,后序遍历,在后序遍历(LRD)中,首先处理左子树,再访问右子树,最后访问根。CDBFEA,练习,一棵二叉数共有10个节点(分别用A、BJ表示),已知树的中序遍历结果为:DHBEAFCIGJ,前序遍历

5、结果为:ABDHECFGIJ。回答下列问题。 请画出这棵二叉树。 写出该树的后序遍历结果。,5.5 内部排序,5.5.1 简单插入排序 5.5.2 简单选择排序 5.5.3 冒泡排序,5.5.1 简单插入排序,列表被分成两个子列表:已排序和未排序的;初始时已排序部分为空。 在每次扫描过程中,取出未排序列表中的第一个元素,然后转到已排序列表中,将其插入到合适的位置上。每次扫描,未排序列表增加1个,已排序列表减少1个。 对于n个数据,需要进行n-1次扫描。,插入排序,插入排序示意,插入排序示意,5.5.2 简单选择排序,列表被分成两个子列表:已排序和未排序的;初始时已排序部分为空。 排序时,从未排

6、序列表中找到最小元素,与第一个元素交换。 经过选择和交换后,将未排序列表中的第一个元素划入排序列表中,这一过程称为一次扫描。每次扫描后,未排序列表减少一个元素,已排序列表增加一个元素。 对于n个数据,需要进行n-1次扫描。,选择排序,选择排序示意,选择排序示意,5.5.3 冒泡排序,列表被分成两个子列表:已排序和未排序的;初始时已排序部分为空。 在未排序的子列表中,最小的元素通过冒泡的方法选出来并移动到已排序子列表中,这一过程称为一次扫描。每次扫描,未排序元素增加1个,已排序元素减少1个。 冒泡时,进行两两比较,如果前者较大,则交换数据。 对于n个数据,需要进行n-1次扫描。,冒泡排序,冒泡排

7、序示意,冒泡排序示意,冒泡法排序示意,10,1,2,7,6,8,9,3,4,5 第1轮第2轮第3轮,冒泡法排序示意,10,1,2,7,6,8,9,3,4,5 继续排序,5.6 检索(查找),查找实现在列表中确定目标所在位置。查找通常返回具有要查找目标值的第一个元素的位置(索引)5.6.1 顺序检索 5.6.2 二分法检索 5.6.3 分块检索* 5.6.4 散列表检索*,5.6.1 顺序检索(查找),用于查找无序列表,一般用这种方法查找规模较小的列表。 顺序查找从表头开始逐个元素查找,当找到目标元素或查找完整个列表时,查找过程结束。,顺序查找示意,顺序查找示意,5.6.2 二分法检索(折半查找

8、),顺序查找很慢,尤其当列表中数据非常多时,逐个元素比较非常费时。当列表有序时,可采用效率非常高的折半查找算法。 折半查找时,先测试中间元素,可以判断出目标在列表的前半部分还是后半部分。如果在前半部分,则不用比较后半部分数据,排除掉一半数据。 重复折半过程,直到找到目标或确定目标不在列表中。,示意,小结,数据结构:数据的逻辑结构、数据的存储结构和数据的运算 数据结构通常分为四种基本结构 数据的四种基本的存储映射方式 线性结构中有关线性表、栈、队列和链表的概念。 树型结构中介绍了树、二叉树概念,以及线索化和遍历操作。 图型结构中掌握图的基本概念,存储和遍历的方法 选择排序、插入排序、冒泡排序 顺序查找、折半查找,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医学治疗 > 基础医学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报