- 博客(11)
- 收藏
- 关注
原创 离散数学复习
离散数学复习求等价类解题步骤先画出关系图关系图每一个连通分支的节点构成的集合是一个等价类注意:每个连通分支必须是对称的。例子[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jbCXHqu7-1610324096007)(C:\Users\Yerz\AppData\Roaming\Typora\typora-user-images\image-20210109191724380.png)]对于这个关系图,有三个连通分支 且都是对称的,所以等价类有
2021-01-11 08:15:47
1267
原创 进程死锁
进程死锁死锁的概念死锁是指在系统中的多个( 进程 )无限期地等待永远不会发生的条件。产生死锁的四个必要条件互斥请求与保持循环等待不剥夺防止死锁发生可以破坏四个条件,但破坏互斥不太实际解除死锁的两种常用方法资源剥夺法从其他进程那里剥夺足够数量的资源给死锁进程,以解除死锁状态撤销进程法对待死锁,一般考虑从四个策略:预防、避免、检测、接触银行家算法属于死锁避免策略破坏循环等待条件属于死锁预防策略(资源有序分配法)剥夺资源属于死锁接触策略(资源剥夺法)
2021-01-08 18:42:37
251
原创 主存储管理
主存储管理零散要点考试必考知识点在存储管理方案中可变分区管理可与覆盖技术配合在存储管理中,采用覆盖与交换技术的目的是节省主存空间动态重定位技术依赖于重定位寄存器虚拟存储器的最大容量依赖与计算机的地址结构较好的解决“零头”问题的存储管理方案是页式存储管理系统“抖动”现象的发生是由置换算法选择不当引起的在可变式分区存储管理中的拼接技术可以集中空闲分区分区管理中采用“最佳适应算法”,宜把空闲区按地址递增分配在固定分区分配中,每个分区的大小可以不同,但要预
2021-01-08 18:28:26
1068
原创 进程死锁
进程死锁死锁的概念死锁是指在系统中的多个( 进程 )无限期地等待永远不会发生的条件。产生死锁的四个必要条件互斥请求与保持循环等待不剥夺防止死锁发生可以破坏四个条件,但破坏互斥不太实际解除死锁的两种常用方法资源剥夺法从其他进程那里剥夺足够数量的资源给死锁进程,以解除死锁状态撤销进程法对待死锁,一般考虑从四个策略:预防、避免、检测、解除银行家算法属于死锁避免策略破坏循环等待条件属于死锁预防策略(资源有序分配法)剥夺资源属于死锁接触策略(资源剥夺法)
2021-01-07 20:01:40
413
原创 进程并发模拟器
思路1. 图形用户界面.为了能更好的演示进程并发,需要写一个较清晰美观的gui程序.1.1 JFrameJFrame是指一个计算机语言-java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。1.2 JPanelJPanel 是 Java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing包中,是一种轻量级容器,可以加入到JFrame窗体中。JPanel默认的布局管理器是FlowLayout,其自身可
2020-10-25 18:31:53
440
原创 蛮力法和分治法求解逆序数
问题描述给定一个随机数数组,求取这个数组中的逆序对总个数。要求时间效率尽可能高。那么,何为逆序对?设 A 为一个有 n 个数字的有序集 (n>1),其中所有数字各不相同。如果存在正整数 i, j 使得 1 ≤ i < j ≤ n 而且 A[i] > A[j],则 <A[i], A[j]> 这个有序对称为 A 的一个逆序对,也称作逆序数。例如,数组(3,1,4,5,2)的逆序对有(3,1),(3,2),(4,2),(5,2),共4个。解决方案蛮力法,使用蛮
2020-10-21 22:37:25
2704
原创 快速排序
快速排序快速排序(Quicksort)是对冒泡排序的一种改进。快速排序由C. A. R.Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。这是一种二分法思想,每次将整个无序序列一分为二,归位一个元素,对两个子序列采用同样的方式进行排序,直至子序列长度为1或0为止快速排序的分治策略分解
2020-10-14 11:15:16
305
原创 归并排序-自底向上的归并排序算法
归并排序归并排序(Merge Sort)是建立在归并操作上的一种有效,稳定的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。算法描述分解: 将原序列分解成length长度的若干子序列求解子问题: 将相邻的两个子序列调用Merge算法合并成一个有序子序列合并: 由于整个序列存放在数字a中,排序过程是就地进行的,合并步骤不需要执行
2020-10-13 20:45:38
2792
2
转载 递推方程求解的几种方法
总结一下递推方程的求解方法。主要介绍六种方法:迭代法,差消法,递归树,主定理,特征根法,母函数法。欢迎大家批评指正~1、迭代法不断用递推方程的右部替换左部,下面以汉诺塔为例进行求解。有时候直接迭代可能不太方便,可以使用换元迭代。下面以二分归并排序迭代方程为例进行求解。2、差消法差消法一般应用在递归方程右边不仅仅只依赖于当前项的前一项,而是前很多项,这种递归方程直接用迭代法很麻烦。属于高阶递归方程,因此要先把高阶递归方程进行差消,再进行迭代。以快速排序的递归方程为例。3、递归树建立递归
2020-10-08 17:17:50
11664
原创 幸运数问题
问题描述小明同学学习了不同的进制之后,拿起了一些数字做起了游戏。小明同学知道,在日常生活中我们最常用的是十进制数,而在计算机中,二进制数也很常用。现在对于一个数字x,小明同学定义出了两个函数f(x)和g(x)。 f(x)表示把x这个数用十进制写出后各个数位上的数字之和。如f(123)=1+2+3=6。 g(x)表示把x这个数用二进制写出后各个数位上的数字之和。如123的二进制表示为1111011,那么,g(123)=1+1+1+1+0+1+1=6。 小明同学发现对于一些正整数x满足f(x)=g(x),他把
2020-10-05 20:47:41
371
转载 算法设计与分析-概念-算法时间复杂度分析
title: ‘[算法设计与分析-概念]算法复杂度分析’date: 2020-09-28 21:09:32tags:- 算法复杂度分析categories: 算法设计与分析#什么是复杂度分析?数据结构和算法解决是“如何让计算机更快时间、更省空间的解决问题”。因此需从执行时间和占用空间两个维度来评估数据结构和算法的性能。分别用时间复杂度和空间复杂度两个概念来描述性能问题,二者统称为复杂度。复杂度描述的是算法执行时间(或占用空间)与数据规模的增长关系。#为什么要进行复杂度分析?和性.
2020-09-28 22:18:14
873
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人