自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(95)
  • 收藏
  • 关注

原创 直接插入排序-C语言(带图详细)

直接插入排序是一种最简单的排序方法,其基本操作是将需要排序的元素插入到已排好的有序表序列中,从而得到一个完整的有序序列。

2023-11-03 09:59:36 207

原创 408 考研《操作系统》第三章第三节:基本分页存储管理、两级页表、基本分段存储管理方式、段页式管理方式

将内存空间分为一个个大小相等的分区(比如:每个分区4KB),每个分区就是一个“页框”(页框=页帧=内存块=物理块=物理页面)。每个页框有一个编号,即“页框号”(页框号=页帧号=内存块号=物理块号=物理页号),页框号从0开始。将进程的逻辑地址空间也分为与页框大小相等的一个个部分,每个部分称为一个“页”或“页面”。每个页面也有一个编号,即“页号”,页号也是从0开始。(注:进程的最后一个页面可能没有一个页框那么大。因此,页框不能太大,否则可能产牛讨大的内部碎片)

2022-12-25 22:05:51 2148 1

原创 408 考研《操作系统》第三章第二节:内存管理、覆盖和交换 、连续分配管理方式、动态分区分配算法

早期的计算机内存很小,比如 IBM 推出的第一台PC机最大只支持 1MB 大小的内存。因此经常会出现内存大小不够的情况。后来人们引入了覆盖技术,用来解决“程序大小超过物理内存总和”的问题覆盖技术的思想:将程序分为多个段(多个模块)。常用的段常驻内存,不常用的段在需要时调入内存。内存中分为一个“固定区”和若干个“覆盖区”。需要常驻内存的段放在“固定区”中,调入后就不再调出(除非运行结束)不常用的段放在“覆盖区”,需要用到时调入内存,用不到时调出内存必须由程序员声明覆盖结构,操作系统完成自动覆盖。

2022-12-23 21:43:10 911

原创 408 考研《操作系统》第三章第一节:内存

内存可存放数据。程序执行前需要先放到内存中才能被CPU处理——缓和CPU与硬盘之间的速度矛盾。

2022-12-22 20:35:06 1043

原创 408 考研《操作系统》第二章第七节:死锁和死锁的三种处理策略(预防死锁、避免死锁、检测和解除)

在并发环境下,各进程因竞争资源而造成的一种互相等待对方手里的资源,导致各进程都阻塞,都无法向前推进的现象,就是“死锁”。发生死锁后若无外力干涉,这些进程都将无法向前推进。互斥条件:只有对必须互斥使用的资源的争抢才会导致死锁。如果把只能互斥使用的资源改造为允许共享使用,则系统不会进入死锁状态。比如:SPOOLing技术。操作系统可以采用 SPOOLing 技术把独占设备在逻辑上改造成共享设备。比如,用SPOOLing技术将打印机改造为共享设备…该策略的缺点。

2022-12-13 22:32:38 1285

原创 408 考研《操作系统》第二章第六节:解决复杂的互斥问题的思想和管程

桌子上有一只盘子,每次只能向其中放入一个水果。爸爸专向盘子中放苹果,妈妈专向盘子中放橘子,儿子专等着吃盘子中的橘子,女儿专等着吃盘子中的苹果。只有盘子空时,爸爸或妈妈才可向盘子中放一个水果。仅当盘子中有自己需要的水果时,儿子或女儿可以从盘子中取出水果。用PV操作实现上述过程。总结:在生产者-消费者问题中,如果缓冲区大小为1,那么有可能不需要设置互斥信号量就可以实现互斥访问缓冲区的功能。当然,这不是绝对的,要具体问题具体分析。建议:在考试中如果来不及仔细分析,可以加上互斥信号量,

2022-12-12 20:50:45 400

原创 408 考研《操作系统》第二章第五节:信号量机制和用信号量机制实现进程互斥、同步、前驱关系

Tips:不要一头钻到代码里,要注意理解信号量背后的含义,一个信号量对应一种资源信号量的值 = 这种资源的剩余数量(信号量的值如果小于0,说明此时有进程在等待这种资源)P( S ) —— 申请一个资源S,如果资源不够就阻塞等待V( S ) —— 释放一个资源S,如果有进程在等待该资源,则唤醒一个进程。

2022-12-11 23:08:56 594

原创 408 考研《操作系统》第二章第四节:进程同步和进程互斥

学习提示:1.理解各个算法的思想、原理2.结合上小节学习的“实现互斥的四个逻辑部分”,重点理解各算法在进入区、退出区都做了什么3.分析各算法存在的缺陷(结合“实现互斥要遵循的四个原则”进行分析)理解各方法的原理了解各方法的优缺点。

2022-12-10 19:16:39 781

原创 408 考研《操作系统》第二章第三节:处理机调度、进程调度、调度算法的评价指标、调度算法(FCFS、SJF、HRRN)

进程调度(低级调度),就是按照某种算法从就绪队列中选择一个进程为其分配处理机。对于计算机用户来说,会希望自己的提交的请求(比如通过键盘输入了一个调试命令)尽早地开始被系统服务、回应。响应时间,指从用户提交请求到首次产生响应所用的时间。例题:各进程到达就绪队列的时间、需要的运行时间如下表所示。使用先来先服务调度算法,计算各进程的等待时间、平均等待时间、周转时间、平均周转时间、带权周转时间、平均带权周转时间。

2022-12-08 20:13:11 325

原创 408 考研《操作系统》第二章第二节:线程的概念和特点

可以把线程理解为“轻量级进程”。引入线程后,线程是CPU调度的基本单位线程是一个基本的CPU执行单元,也是程序执行流的最小单位。引入线程之后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提升了系统的并发度,使得一个进程内也可以并发处理各种任务(如QQ视频、文字聊天、传文件)引入线程后,进程只作为除CPU之外的系统资源的分配单元(如打印机、内存地址空间等都是分配给进程的)。进程依然是资源分配的基本单位。从属于同一进程的各个线程共享进程的资源。

2022-12-08 16:45:06 123

原创 408 考研《操作系统》第二章第一节:进程的定义、组成和进程控制,进程通信

进程是程序的一次执行。在这个执行过程中,有时进程正在被CPu处理,有时又需要等待CPu服务,可见,进程的状态是会有各种变化。为了方便对各个进程的管理,操作系统需要将进程合理地划分为几种状态。进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。简化理解:反正进程控制就是要实现进程状态转换。顾名思义,进程通信就是指进程之间的信息交换。进程是分配系统资源的单位(包括内存地址空间),因此各进程拥有的内存地址空间相互独立。

2022-12-08 15:14:33 128

原创 408 考研《操作系统》第一章第三节:中断和异常、系统调用

1.中断和异常 https://www.bilibili.com/video/BV1YE411D7nH/?p=6&share_source=copy_web&vd_source=d228985826b5639722689529052241392. 系统调用 https://www.bilibili.com/video/BV1YE411D7nH/?p=7&share_source=copy_web&vd_source=d228985826b563972268952905224139在操作系统中引入核心态和

2022-12-03 21:05:17 1080 1

原创 408 考研《操作系统》第一章第二节:操作系统的发展与分类和操作系统的运行机制与体系结构

学习提示:要重点关注和理解各类操作系统主要想解决的是什么问题,各自的优缺点。引入(用外围机+磁带完成),并由(操作系统的雏形)负责控制作业的输入、输出.问题:为何多道批处理系统能使资源利用率大幅提升?假设计算机需要处理三个作业:作业一:输入1秒,计算1秒,输出1秒作业二:输入1秒,计算1秒,输出1秒作业三:输入1秒,计算1秒,输出1秒若采用?若采用?主要优点:。资源利用率大幅提升,CPU和其他资源更能保持“忙碌”状态,系统吞吐量增大。主要缺点:(用户提交自己的作业之后就只能等待计算机处理完成,中

2022-12-03 09:56:46 655

原创 408 考研《操作系统》第一章第一节:操作系统的概念和特征

并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。常考易混概念——并行:指两个或多个事件在同一时刻同时发生。操作系统的并发性指计算机系统中“同时”运行着多个程序,这些程序宏观上看是同时运行着的,而微观上看是交替运行的。操作系统就是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。当今的计算机,一般都是多核CPU,比如Intel的第八代i3处理器就是4核CPU,这意味着同一时刻可以有4个程序并行执行,但是操作系统的并发性依然必不可少.

2022-12-02 22:40:22 896

原创 408考研科目《数据结构》第八章第一节:排序的基本概念和插入排序(直接插入排序,折半插入排序,希尔排序)

,就是重新排列表中的元素,使表中的元素满足的过程。一个神奇的学习网站:https://www.cs.usfca.edu/~galles/visualization/Algorithms.html算法思想:思路:先用折半查找找到应该插入的位置,再移动元素

2022-11-27 21:05:30 459

原创 第七章第三节:散列表(Hash Table)

(Hash Table),又称。是一种数据结构,特点是︰数据元素的与其查找成功:查找失败在构造散列函数时,必须注意以下几点:下面介绍常用的散列函数。例如:数字分析法——设关键字是r进制数(如十进制数),而,每种数码出现的机会均等﹔而在某些位上分布不均匀,只有某几种数码经常出现,此时。这种方法适合于举例:平方取中法――具体取多少位要视实际情况而定。,因此使得散列地址分布比较均匀,适用于关键字的每位取值都不够均匀或均小于散列地址所需的位数。查找目标:27查找目标:21平方探测法:比

2022-11-19 23:57:26 429

原创 第七章第二节:B树和B+树

B树,又称多路平衡查找树,B树中所有结点的孩子个数的最大值称为B树的阶,通常用m表示。一棵m阶B树树中每个结点至多有m棵子树,即至多含有m-1个关键字。若根结点不是终端结点,则至少有两棵子树。除根结点外的所有非叶结点至少有「m/2]棵子树,即至少含有[m/2]-1个关键字。所有的叶结点都出现在同一层次上,并且不带信息(可以视为外部结点或类似于折半查找判定树的查找失败结点,实际上这些结点不存在,指向这些结点的指针为空)。

2022-11-19 21:11:51 435

原创 第七章第一节:顺序查找和折半查找

分块查找又称索引顺序查找,它吸取了顺序查找和折半查找各自的优点,既有动态结构,又适于快速查找。

2022-11-19 16:28:17 1194

原创 第六章第二节:图的遍历(广度优先遍历和深度优先遍历)和应用(最小生成树、最短路径、有向无环图的描述表达式、拓扑排序、关键路径)

教程:最小生成树。

2022-11-19 15:05:55 1926

原创 第六章第一节:图的基本概念和存储及基本操作

而在图结构中,节点之间的关系任意,任何两个顶点都可能相连。每一个顶点所在结点都是之后链表的头结点,之后的链表结点存放从头结点所存顶点能够直接到达顶点的位置下标,如顶点A能够直接到达D,B两个顶点,D的顶点存放在3位置,B顶点存放在1位置,所以A之后的链表结点存放的值为3和1。6.无向边:若顶点A到顶点B的边没有方向,称这条边为无向边,用无序偶对(A,B)或(B,A)表示。5.通常表示为:G(V,E),G表示一个图,V是图G中顶点的集合,E是图G中边的集合。4.VR是两个顶点之间关系的集合,也是边的集合。

2022-11-17 15:49:29 476

原创 第五章第三节:数和二叉树的应用(二叉排序树和哈夫曼树及哈夫曼编码)

二叉排序树(也称二叉查找树)或者是一棵空树,或者是具有下列特性的二叉树1)若左子树非空,则左子树上所有结点的值均小于根结点的值。2)若右子树非空,则右子树上所有结点的值均大于根结点的值。3)左、右子树也分别是一棵二叉排序树。根据二叉排序树的定义,左子树结点值

2022-11-14 17:40:39 371

原创 第五章第二节:树和森林

树的存储方式有多种,既可采用顺序存储结构,又可采用链式存储结构,但无论采用何种存储方式,都要求能唯一地反映树中各结点之间的逻辑关系,这里介绍3种常用的存储结构。

2022-11-13 16:08:11 686 6

原创 第五章第一节:树与二叉树

二叉树线索化。

2022-11-11 23:30:44 416

原创 第四章第一节:串的定义和实现以及串的存储结构

串的定义和实现以及串的存储结构

2022-11-10 20:55:18 75

原创 408考研科目《数据结构》第三章第三节:特殊矩阵的压缩存储

特殊矩阵的压缩存储

2022-11-09 21:13:46 1175

原创 408考研科目《数据结构》第三章第二节:栈和队列的应用

太多层递归可能会导致栈溢出树的层次遍历图的广度优先遍历。

2022-11-09 20:05:46 941

原创 408考研科目《数据结构》第三章第一节:栈和队列

先进入队列的元素先出队。

2022-11-08 22:26:32 804

原创 408考研科目《数据结构》第一章:算法

口诀:常对幂指阶。

2022-11-07 21:23:16 374

原创 408考研科目《数据结构》第二章:线性表

根据双链表的删除,销毁一个双链表。

2022-11-07 21:22:50 963

原创 vue2.0第六节:路由 & vue-router & 导航守卫

路由(英文:router)就是对应关系。Hash 地址与组件之间的对应关系。vue-router是 vue.js 官方给出的路由解决方案。它只能结合 vue 项目进行使用,能够轻松的管理 SPA 项目中组件的切换。

2022-10-07 17:47:46 139

原创 vue2.0第五节:动态组件 & 插槽 & 自定义指令

动态组件指的是动态切换组件的显示与隐藏。插槽(Slot)是 vue 为组件的封装者提供的能力。允许开发者在封装组件时,把不确定的、希望由用户指定的部分定义为插槽。可以把插槽认为是组件封装期间,为用户预留的内容的占位符。vue 官方提供了等常用的指令.除此之外 vue 还允许开发者自定义指令。私有自定义指令全局自定义指令在每个 vue 组件中,可以在directives 节点下声明私有自定义指令。在使用自定义指令时,需要加上v- 前缀。动态绑定参数值在template结构中使用自定义指令。

2022-10-06 20:57:37 851

原创 vue2.0第四节:生命周期 & 数据共享和ref引用

ref 用来辅助开发者在不依赖于 jQuery 的情况下,获取 DOM 元素或组件的引用。每个 vue 的组件实例上,都包含一个$refs 对象,里面存储着对应的 DOM 元素或组件的引用。默认情况下,组件的$refs指向一个空对象。

2022-10-05 21:54:42 343

原创 vue2第三节:侦听器,计算属性(computed),vue-cli和vue 组件

watch 侦听器允许开发者,从而针对数据的变化做特定的操作。语法格式如下:监听 username 值的变化,并使用 axios 发起 Ajax 请求,检测当前输入的用户名是否可用:1.3 侦听器的格式1.3.1 方法格式的侦听器缺点1:无法在刚进入页面的时候,自动触发!!!缺点2:如果侦听的是一个对象,如果对象中的属性发生了变化,不会触发侦听器!!!1.3.2 对象格式的侦听器好处1:可以通过 immediate 选项,让侦听器自动触发!!!好处2:可以通过 deep 选项,

2022-10-05 11:29:25 967

原创 vue 2.0 ——遇见的bug: “ ‘vue-cli-service‘ 不是内部或外部命令,也不是可运行的程序或批处理文件”的报错解决方案 ”

运行时出现“‘vue-cli-service’ 不是内部或外部命令,也不是可运行的程序或批处理文件”的报错时,大概是由于调用了。相似的报错例如:’ ********* '不是内部或外部命令,也不是可运行的程序或批处理文件。运行成功后,成功创建出新的node_modules文件夹。这里出现警告不影响使用,只要没有红色的报错就可以啦。运行项目,项目可以正常启动了。,再拷贝到其他计算机时,安装完成,没有出现报错;

2022-10-04 23:01:39 929

原创 vue2第二节:vue 基础入门(过滤器)

!

2022-09-29 22:31:19 163

原创 vue2第二节:vue 基础入门(vue的基本使用,调试工具,vue的指令)

① 能够知道 vue 的基本使用步骤② 掌握 vue 中常见指令的基本用法③ 掌握 vue 中过滤器的基本用法官方给出的概念:Vue (读音 /vjuː/,类似于 view) 是一套前端。vue 框架的特性,主要体现在如下两方面:① ② 在使用了 vue 的页面中,vue 会,从而重新渲染页面的结构。示意图如下:好处:当时,!注意:数据驱动视图是。在时,双向数据绑定可以辅助开发者,把用户填写的内容同步到数据源中。示意图如下:好处:! 是 vue 实现和的核心原理。MVVM 指的是 Model、V

2022-09-29 21:12:16 168

原创 vue2第一节:前端工程化与 webpack

前端工程化指的是:在企业级的前端项目开发中,把前端开发所需的工具、技术、流程、经验等进行规范化、标准化。企业中的 Vue 项目和 React 项目,都是基于工程化的方式进行开发的。好处:前端开发自成体系,有一套标准的开发方案和流程概念:webpack 是前端项目工程化的具体解决方案。主要功能:它提供了友好的前端模块化开发支持,以及代码压缩混淆、处理浏览器端 JavaScript 的兼容性、性能优化等强大的功能。好处:让程序员把工作的重心放到具体功能的实现上,提高了前端开发效率和项目的可维护性。......

2022-08-16 20:21:50 102

原创 Node.js第一节:初识Node.js与内置模块(fs文件系统模板、path路径模板、http模板)

Node.js是一个基于ChromeV8引擎的JavaScript运行环境。Node.js的官网地址https终端(英文Terminal)是专门为开发人员设计的,用于实现人机交互的一种方式。作为一名合格的程序员,我们有必要识记一些常用的终端命令,来辅助我们更好的操作与使用计算机。fs模块是Node.js官方提供的、用来操作文件的模块。它提供了一系列的方法和属性,用来满足用户对文件的操作需求。方法,用来读取指定文件中的内容方法,用来向指定的文件中写入内容path模块?......

2022-07-29 10:37:47 1873 1

原创 windows中资源管理器 cmd命令: cd进入目录无效

cdcd。

2022-07-27 19:49:08 3963 2

原创 Git——第二节(1):Github远程仓库的使用和Git分支的操作

开源是指不仅提供程序,还提供程序的源代码;闭源是只提供程序,不提供源代码开源并不意味着完全没有限制,为了限制使用者的使用范围和保护作者的权利,每个开源项目都应该遵守开源许可协议Github是全球最大的开源项目托管平台。因为只支持Git作为唯一的版本控制工具,故名GitHub。在Github中,你可以②为自己喜欢的开源项目做贡献(PullRequest)③和开源项目的作者讨论Bug和提需求(Issues)④把喜欢的项目复制一份作为自己的项目进行修改(Fork)...

2022-07-22 12:30:42 220

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除