《软件专业综合》PPT课件.ppt
《《软件专业综合》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《软件专业综合》PPT课件.ppt(86页珍藏版)》请在三一办公上搜索。
1、数据结构,数据结构:是指数据元素之间的相互联系。可以看作是相互之间存在着某种特定关系的数据元素的集合。数据的逻辑结构:数据元素之间的逻辑关系。线性结构:有唯一的开始结点及终端结点,其余结点有且仅有一个前驱和后继。非线性结构:分为树型结构及图型结构。树型结构中,每个结点仅有一个前驱但可以有多个后继,只有一个开始结点但可以有多个终端结点。图型结构中,每个结点的前驱和后继的个数都可以是任意的,可能没有开始结点和终端结点,也可能有多个开始结点、多个终端结点。,数据结构,存储结构:数据元素及其关系在计算机存储器中的存储方式,也称为数据的物理结构。顺序结构链接结构索引结构散列结构评价算法的两个标准:时间复
2、杂度、空间复杂度。,数据结构,线性表是数据元素的一个有限序列。该序列中所含元素的个数叫做线性表的长度,用n表示,n0。当n=0时,表示线性表是一个空表。线性表的存储:顺序表、链表。线性表的主要操作:插入、删除。重点掌握单链表的操作。,数据结构,链表:链式存储结构不需要一片连续存储单元,其元素可以分散存放,每个元素中不仅包含本身的信息,而且包含后继元素的地址信息。一般,每个元素分为两部分:数据部分:存放元素的值,称为数据域。指针部分:存放后继元素的存储地址,称为指针域。,数据结构,单向链表:链表元素中只有一个指针域,指向它的后继元素。头指针:指向链表第一个元素的指针。空指针用nil或表示。单向链
3、表结点类型:假定单链表中每个结点数据域用data表示,指针域用next表示。用data(a)和next(a)表示地址为a的结点的数据域和指针域的内容。,数据结构,栈是一种只能在一端进行插入或删除操作的线性表。允许进行插入、删除操作的一端称为栈顶。表的另一端称为栈底。当栈中没有数据元素时,称为空栈。栈的插入操作通常称为进栈或入栈,栈的删除操作通常称为退栈或出栈。,数据结构,队列简称队,它是一种不同于栈的特殊线性表,它仅允许在表的一端进行插入,而在表的另一端进行删除。我们把进行插入的一端称做队尾(rear),进行删除的一端称做队首(front)。向队列中插入新元素称为进队或入队,新元素进队后就成为
4、新的队尾元素;从队列中删除元素称为出队或离队,元素出队后,其后继元素就成为队首元素。,数据结构,数组是n(n1)个相同类型数据元素a1,a2,an构成的有限序列,且该有限序列存储在一块地址连续的内存单元中。二维数组的存放方式:按行优先存储方式按列优先存储方式,数据结构,特殊矩阵:指非零元素或零元素的分布有一定规律的矩阵。一个阶数较大的矩阵中,非零元素个数s相对于矩阵元素的总个数t十分小时,即st时,称该矩阵为稀疏矩阵。稀疏矩阵的压缩存储方法:三元组(行标,列标,值)十字链表,三元组表示法例,设有一个67阶稀疏矩阵A,则对应的三元组线性表为:(1,3,1),(2,2,2),(3,1,3),(4,
5、4,5),(5,5,6),(6,6,7),(6,7,4),数据结构,树的存储可采用链式存储结构,按树的度设计结点的孩子结点指针域个数。n个结点的k叉树,有n*k个指针,有用指针域n-1个。,数据结构,二叉树是n(n0)个结点的有限集合,它或为空树,或为由一个根结点和两棵互不相交的称为左子树和右子树的二叉树组成。,几种特殊二叉树,满二叉树:二叉树每一层上的结点数都达到最大值。完全二叉树:除最底层外,其余各层结点数都达到最大值,且最底层的结点都集中在该层最左边的若干连续位置上。平衡二叉树:它或者为空树,或者左右子树都为平衡二叉树,且左子树与右子树深度之差的绝对值不超过1。,满二叉树,二叉树每一层上
6、的结点数都达到最大值。,完全二叉树,除最底层外,其余各层结点数都达到最大值,且最底层的结点都集中在该层最左边的若干连续位置上。,平衡二叉树,它或者为空树,或者左右子树都为平衡二叉树,且左子树与右子树深度之差的绝对值不超过1。,二叉树的遍历,遍历是指按照一定次序访问某数据结构中的所有结点,并且每个结点仅被访问一次。二叉树的遍历是指按照一定次序访问树中所有结点,并且每个结点仅被访问一次。,二叉树的遍历形式,先序遍历:访问根结点;先序遍历左子树;先序遍历右子树。中序遍历:中序遍历左子树;访问根结点;中序遍历右子树。后序遍历:后序遍历左子树;后序遍历右子树;访问根结点。,哈夫曼树,哈夫曼树又称最优树,
7、是一类带权路径最短的树。树的带权路径长度(WPL):从根结点到某结点的路径长度与该结点上权的乘积。哈夫曼树:WPL为最小的二叉树。,哈夫曼树的构造,(1)根据给定的n个权值w1,w2,.,wn构成n棵二叉树的集合F=T1,T2,.,Tn,其中每棵二叉树只有一个带权为wi的根结点。(2)在F中选取两棵根结点权值最小的树作为左、右子树构造一棵新的二叉树,且置新的二叉树的根结点的权值为其左、右子树上根结点的权值之和。(3)将新的二叉树加入F中,去除原来两棵根结点权值最小的树。(4)重复(2)和(3),直到F中只含有一棵数为止。这棵树就是哈夫曼树。,哈夫曼编码,编码:将要传送的文字转换成二进制位0,1
8、组成的字符串。让电文中出现次数较多的字符采用尽可能短的编码,则传送电文的总长度便可减少。,哈夫曼编码,假定电文中共使用了n种字符,每种字符在电文中出现的次数为 wi。以wi作为哈夫曼树叶子结点的权值构造出哈夫曼树,然后将每个结点的左分支标上“0”,右分支标上“1”,则从根结点到代表该字符的叶结点之间,沿途路径上的分支号组成的代码串就是该字符的编码。,图,图G由两个集合V和E组成,记为G=(V,E),其中V是图中顶点的有限集合,V=v1,v2,vn,E是连接V中两个顶点的边的有限集合,边是顶点的有序对或无序对,记作或(vi,vj)。图的常用存储结构有:邻接矩阵邻接表,邻接矩阵例,邻接表例,查找,
9、常用的查找方法:顺序查找二分查找分块查找哈希查找,排序,常用的排序方法:冒泡排序法选择排序法快速排序法堆排序法归并排序法,操作系统,操作系统是一组控制和管理计算机硬件和软件资源,合理地组织计算机工作流程,以及方便用户的程序的集合。操作系统的基本类型:多道批处理系统分时系统实时系统,操作系统,操作系统的功能:处理机管理:负责处理及资源的管理,包括进程控制、进程同步、进程通信及调度。内存管理:负责内存资源管理,包括内存分配及回收、信息保护、地址映射及内存扩充。设备管理:负责设备资源的管理,包括设备分配回收、缓冲管理、设备处理、设备独立性。文件管理:负责信息资源管理,包括文件存储空间管理、目录管理、
10、文件操作、文件共享保护。用户接口:命令接口及程序接口,操作系统,操作系统的特性:并发性:是指两个或多个事件在同一时间间隔内发生。共享性:是指系统中的资源可供多个并发执行的进程共同使用。不确定性:多个作业的执行顺序和每个作业的执行时间是不确定的。,操作系统,存储管理功能:内存分配 地址变换 存储保护 内存扩充 重定位:将作业的逻辑地址转换为物理地址的过程。,操作系统,存储管理方法:分区存储管理固定分区可变分区分页存储管理分段存储管理,固定分区,固定分区存储管理方法将内存空间划分为若干固定大小的分区,每个分区中可以装入一道程序。为了便于管理,系统需建立一张分区说明表。,固定分区的分配及回收,分区分
11、配:当有用户程序要装入时,检索分区说明表,从中找出一个能满足要求的空闲分区,然后修改分区说明表中相应表项的状态;若找不到满足要求的分区则拒绝分配。分区回收:当程序执行完毕时,释放程序占用的分区,将对应分区的状态置为未分配。特点:最早的多道程序存储管理方式,优点是分区的分配及回收简单,缺点是不能充分利用内存,存在内存碎片。,可变分区,可变分区存储管理根据作业大小建立分区,并使分区的大小正好适应作业的需要。因此系统中分区的大小是可变的,分区的数目也是可变的。可变分区中常用的数据结构有:空闲分区表。用一个空闲分区表来登记系统中的空闲分区。空闲分区链。将内存中的空闲分区以链表方式链接起来,构成空闲分区
12、链。,分区表及分区链示意图,空闲分区表 空闲分区链,分区号 大小 起始地址 1 8KB 24KB 2 12KB 128KB 3 8KB 248KB 4 5,空闲分区分配算法,首次适应算法:空闲分区按地址递增次序排列。分配时从空闲分区链首开始查找,找到第一个能满足其大小要求的空闲分区,再按作业大小划出一块分配给请求者。最佳适应算法:空闲分区按容量递增的次序排列。分配时,从空闲分区链首开始查找,找到第一个能满足其大小要求的空闲分区,再按作业大小划出一块分配给请求者。最差适应算法:空闲分区按容量递减的次序排列。分配时检查第一个空闲分区,若第一个空闲分区小于作业要求的大小,则分配失败。,碎片及拼接,碎
13、片也可称为零头,是指内存中无法被利用的存储空间。拼接:是解决碎片问题的办法之一,即通过移动把多个分散的小分区拼接成一个大分区,也可称为紧缩或紧凑。,虚拟存储器,常规存储器管理要求作业运行前全部装入内存,作业装入内存后一直驻留内存直至运行结束。虚拟存储器:程序运行之前只装入部分程序就启动执行,当程序执行过程中所访问信息不在内存时,由操作系统将其调入;另一方面,操作系统将内存中暂时不使用的内容换出到外存上,从而腾出空间存放将要调入内存的信息。从效果上看,这样的计算机系统好像为用户提供了一个存储容量比实际内存大得多的存储器,将这个存储器称为虚拟存储器。,分页存储管理,分页思想:将进程的逻辑地址空间划
14、分成若干大小相等的页,相应地将主存空间也划分成与页大小相等的块。系统以块为单位分配内存。请求分页思想:作业运行之前只装入部分页面便启动运行,在作业运行过程中,若发现所要访问的页面不在内存,便由硬件产生缺页中断,请求OS将缺页调入内存。若内存无空闲存储空间,则根据某种置换算法淘汰已在内存的某个页面,以腾出内存空间装入缺页。,页面置换算法,先进先出(FIFO)页面置换算法:选择调入主存时间最长的页面予以淘汰。最近最久未使用(LRU)页面置换算法:选择最近一段时间内最长时间没有被访问过的页面予以淘汰。,处理器管理,进程是一个具有一定功能的程序关于某个数据集合的一次运行活动。处理器执行状态:核心态:又
15、称管态、系统态,是操作系统管理程序执行时机器所处的状态。用户态:又称目态,是用户程序执行时机器所处的状态。,进程的状态,一个进程至少应有以下三种基本状态:就绪状态:进程已获得除处理机以外的所有资源,一旦分配了处理机就可以立即执行,此时进程所处的状态为就绪状态。执行状态:又称运行状态。当一个进程获得必要的资源并正在处理机上执行,此时进程所处的状态为运行状态。阻塞状态:又称等待状态、睡眠状态。正在执行的进程,由于发生某事件而暂时无法执行下去(如等待输入/输出完成),此时进程所处的状态为的等待状态。这时即使把处理机分配给该进程,它也无法运行。,进程状态转换图,进程控制块,PCB是描述和管理进程的数据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件专业综合 软件 专业 综合 PPT 课件
链接地址:https://www.31ppt.com/p-4859902.html