数据结构考前辅导.ppt
《数据结构考前辅导.ppt》由会员分享,可在线阅读,更多相关《数据结构考前辅导.ppt(59页珍藏版)》请在三一办公上搜索。
1、数据结构考前辅导,主讲人:袁晓娟,重点章节,第3章 栈和队列第6章 树和二叉树第7章 图第9章 查找,第1章 绪论,1.数据结构定义:数据结构是一门研究非数值的程序设计问题中计算机的操作对象以及它们之间的关系和操作等的学科。2.数据元素是数据的基本单位,数据项是数据的不可分割的最小单位.3.数据结构是带有结构(相互之间存在一种或多种特定关系)的数据元素的集合.,4.数据结构的四类基本结构:(1)集合(2)线性结构(3)树形结构(4)图形结构或网状结构线性结构与非线性结构的不同点:线性结构反映结点间的逻辑关系是一对一 的,非线性结构反映结点间的逻辑关系是多 对多的。,第2章 线性表,1.线性表:
2、n个数据元素的有限序列.线性表是有限序列,可以为空.2.单链表(线性链表)单链表(线性链表)的结点包括两个域:数据域:存储数据元素信息的域.指针域:存储直接后继存储位置的域.,例1:下面关于线性表的叙述中,错误的是哪一个?(B)A线性表采用顺序存储,必须占用一片连续的存储单元。B线性表采用顺序存储,便于进行插入和删除操作。C线性表采用链接存储,不必占用一片连续的存储单元。D线性表采用链接存储,便于插入和删除操作。,第3章 栈和队列,1.栈:限定仅在表尾进行插入或删除操作的 线性表。2.栈:后进先出.例1:一个栈的入栈序列是A、B、C、E、D,五个元素都入栈后,首次出栈的元素是 _。(D)A.A
3、 B.E C.B D.D,D,E,C,B,A,3.队列:是一种先进先出的线性表,它只允许在表的一端进行插入(队尾),而在另一端删除元素(队头)。注:栈和队列都是操作受限的线性表.例2:一个队列的入队序列是1、3、4、2,则队列的首次输出元素是_。(C)A、3 B、2 C、1 D、4,1,头,3,4,2,4.链式队列(链队列):用链表表示的队列.5.链式队列为空的判定条件:Q.front=Q.rear 6.顺序队列 顺序队列的“假溢出”是怎样产生的?一般的一维数组队列的尾指针已经到了数组的上界,不能再有入队操作,但其实数组中还有空位置,这就叫“假溢出”。,第四章 串,1.串(字符串):由零个或多
4、个字符组成的有限序列.2.空 串:零个字符组成的串.空格串:由一个或多个空格组成的串.3.串的长度:串中元素的个数.例1:设s=“I AM A WOMAN”,则字符串的长度为 _.(B)A、11 B、12 C、14 D、15,4.串联接Concat(&T,s1,s2)假设s1,s2,T都是ssting型的串变量,且串T是由s1联结s2得到的,即:T的值的前一段和s1的值相等,T的值的后一段和s2的值相等.例2:设s 1=“GOOD”,s2=“BYE!”则字符串s1和s2连接后的结果是_。(D)A、BYE GOOD!B、GOOD BYE!C、BYEDGOOD!D、GOODBYE!,第五章 数组和
5、广义表,1.广义表一般记为:LS=(a1,a2,an)当广义表LS非空时,称第一个元素a1为LS 的表头,其余元素组成的表(a2,a3,an)是LS的表尾.,一个广义表的表尾总是一个广义表,例1:(判断)一个广义表的表头总是一个广义表(F)例2:广义表(ab),ab)的表尾是_(C)A、ab B、ab C、(ab)D、(ab)思考:1)表头是什么?(ab)2)广义表(a),ab)的表头,表尾分别是?(a)(ab),第6章 树和二叉树,1.二叉树:每个结点至多只有二棵子树,并且,二叉树的子树有左右之分,其次序不能任意颠倒.例1:三个结点的二叉树可以有哪几种形式?,例2:一棵度为2的树与一棵二叉树
6、有何区别?度为2的树从形式上看与二叉树很相似,但它的子树是无序的,而二叉树是有序的。即,在一般树中若某结点只有一个孩子,就无需区分其左右次序,而在二叉树中即使是一个孩子也有左右之分。2.在二叉树的第i层上至多有2(i-1)个结点(i=1).3.深度为k的二叉树至多有2k-1个结点(i=1).4.满二叉树:一棵深度为k且有2k-1个结点的二 叉树.,5.完全二叉树:深度为k,有n个结点的二叉树,当且仅当其每一个结点都与深度为k的满二叉树中编号从1至n的结点一一对应.例3:对完全二叉树叙述正确的是(B)A、完全二叉树就是满二叉树B、完全二叉树同一层上左子树未满不会有右 子树C、完全二叉树和满二叉树
7、编号不对应D、以上都不正确,6.遍历二叉树的操作定义 先序遍历二叉树的操作定义为:若二叉树为空,则空操作;否则(1)访问根结点;(2)先序遍历左子树;(3)先序遍历右子树.中序遍历二叉树的操作定义为:若二叉树为空,则空操作;否则(1)中序遍历左子树;(2)访问根结点;(3)中序遍历右子树.,后序遍历二叉树的操作定义为:若二叉树为空,则空操作;否则(1)后序遍历左子树;(2)后序遍历右子树.(3)访问根结点;例4:如图所示二叉树,分别写出先序,中序,后序遍历结果,先序序列:-+a*b c d/e f中序序列:a+b*c d e/f后序序列:a b c d-*+e f/-,例5:已知一棵二叉树中序
8、和后序序列为分别为:BDCEAFHG和DECBHGFA 画出这棵二叉树。,7.哈夫曼树构造方法:1.根据给定的n个权值w1,w2,wn构成n棵二 叉树的集合F=T1,T2,.,Tn,其中每棵二叉树Ti中只有一个带权wi的根结点,左右子树均空。2.在F中选择两棵根结点权值最小的树作为左右子树构造一棵新的二叉树,且置新的二叉树的根结点的权值为其左右子树上根结点的权值之和。3.在F中删除这两棵树,并将新的二叉树加入F中。4.重复前两步(2和3),直到F中只含有一棵树为止。该树即为哈夫曼树,例6:已知给定权的集合5、29、8、7、14、23、11、3,构造相应的哈夫曼树。,8 29 15 14 23
9、11,8 29 8 7 14 23 11,5 29 8 7 14 23 11 3,42 58,42 29 29,19 29 29 23,19 29 15 14 23,100,第七章 图,1.图分为:有向图和无向图.2.顶点v的入度:以顶点v为头的弧的数目.顶点v的出度:以顶点v为尾的弧的数目.3.一个连通图的生成树:是一个极小连通子图,它含有图中全部顶点,但只有足以构成一棵树的n-1条边.4.图的表示法:邻接表,邻接多重表,十字链表5.数组表示法(邻接矩阵):以二维数组表示有n个顶点的图时,需存放n 个顶点信息和n2个弧信息的存储量.,6.图的邻接矩阵表示法适用于表示(稠密图).7.邻接表:是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 考前 辅导
链接地址:https://www.31ppt.com/p-5358320.html