自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Servlet-jsp 依赖库pox.xml配置

1、Servlet 依赖(Jakarta版本 tomcat10.0及以上使用) 1.1Servlet 依赖(javax版本 tomcat9.0及以下使用)2、JSP 依赖3、JSTL表达式的依赖4、standard标签库 <dependencies> <!--Servlet 依赖--> <dependency> <groupId>jakarta.servlet</groupId&

2021-03-11 16:35:45 617

原创 JAVA-IDEA-Tomcat 完美解决乱码

JAVA-IDEA-Tomcat 完美解决乱码解决方法第1步:修改Windows控制台字符集1.快捷键按下:win+r2.输入 regedit 打开注册表3.找到 "HKEY_CURRENT_USER---->Console若该目录下没有TomCat文件夹,则新建项创建"TomCat",然后在右侧新建->字符串值:名称为CodePage值为65001第2步:修改IDEA在点开"Edit Custom VM Options"文件中的行尾添加下行内容-Dfile.e

2021-03-10 15:13:54 592

原创 C++面向对象高级开发-03.指针与引用

指针与引用背景知识C语言中const修饰指针有三种情况:const修饰指针–常量指针,如:const int *p = &a; 特点:指针的指向可以修改,但是指针指向的数据不可以修改。const修饰常量–指针常量,如:int * const p = &a,const修饰常量,特点:指针的指向不可以改,指针指向的数据可以改。const即修饰指针,又修饰常量,如:const int * const p = &a; 特点:指针的指向和指针指向的数据都不可以改。空指针用于

2021-01-11 11:07:42 202

原创 C++面向对象高级开发-02.堆、栈与内存管理

堆、栈与内存管理1. Stack(栈)Stack,是存在与某作用域(scope)的一块内存空间(memory space)。列如当你调用函数,函数本身即会形成一个stack用来放置它所接收的参数,以及返回地址。在函数本体(function body)中声明的任何变量,其所使用的内存都取自上述的stack。(栈内存空间自动释放)stack objects的生命期,函数执行完自动释放内存。static local objects(静态) 的生命期,其生命作用域结束之后仍然存在,其析构函数直到程序结束调

2021-01-11 10:23:35 140

原创 C++面向对象高级开发-01.C++ 类相关解析

C++ 类相关解析基础知识1. inline (内联)函数函数若在class body内定义完成,便自动成为inline的候选函数。但是否真的为inline函数?答:使用inline关键字,或是在class body 内部定义,都只是表示对编译器的一种建议 。其实无论有没有使用关键字inline,最终都由编译器决定,如果函数太复杂,编译器无法解析出,则最终可能并非为inline函数。2. access level(访问级别)答:private不可外部访问,public可以外部访问3. co

2021-01-09 21:58:12 154

原创 设计模式-01.面向对象七大设计原则

面向对象七大设计原则概述软件的可维护性和可复用性软件的复用(Reuse)或重用拥有众多优点,如可以提高软件的开发效率,提高软件质量,节约开发成本,恰当的复用还可以改善系统的可维护性。面向对象设计复用的目标在于实现支持可维护性的复用。在面向对象的设计里面,可维护性复用都是以面向对象设计原则为基础的,这些设计原则首先都是复用的原则,遵循这些设计原则可以有效地提高系统的复用性,同时提高系统的可维护性。面向对象设计原则和设计模式也是对系统进行合理重构的指南针,重构(Refactoring)是在不改变

2021-01-09 10:05:17 360

原创 操作系统-07.处理机调度概念、层次

处理机调度概念、层次#mermaid-svg-e6CewnxJS3twMt1K .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-e6CewnxJS3twMt1K .label text{fill:#333}#mermaid-svg-e6CewnxJS3twMt1K .node rect,#mermaid-svg

2021-01-04 18:51:32 485

原创 操作系统-06.线程概念、多线程模型

线程概念、多线程模型#mermaid-svg-zznrig7UV5G7TE3O .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-zznrig7UV5G7TE3O .label text{fill:#333}#mermaid-svg-zznrig7UV5G7TE3O .node rect,#mermaid-svg

2021-01-04 13:11:25 121

原创 操作系统-06.进程通信

进程通信#mermaid-svg-MZKKq2anVFmFdJLx .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-MZKKq2anVFmFdJLx .label text{fill:#333}#mermaid-svg-MZKKq2anVFmFdJLx .node rect,#mermaid-svg-MZKKq

2021-01-03 20:19:45 501

原创 操作系统-05.进程控制

进程控制1.什么是进程控制?答:进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。简化理解:反正进程控制就是要实现进程状态转换2.如何实现进程控制?答:3.原语实现进程控制?答:原语特点:运行与核心态,执行期间不允许中断,即原子操作,实现方式:关中断,开中断,执行过程屏蔽外来中断。4.进程控制相关原语?答:进程控制会导致进程状态的转换。无论哪个原语,要做的无非三类事情:①.更新PCB中的信息(如修改进程状态标志、将运行环境

2021-01-03 19:47:32 183

原创 操作系统-04.进程的状态与切换

进程的状态与切换进程的状态进程状态来源:由于程序执行过程中,有些进程正在被CPU处理,有些又要等CPU服务,可见进程的状态会有各种变化,因此为了方便对进程的管理,产出了状态。三种基本状态:运行状态(占用CPU,在CPU执行)、就绪状态(具备运行条件,但没有空闲CPU,占时不能执行)、阻塞状态(因等待某一事件而目前不能执行,如请求分配IO资源)注:CPU单核:每一时刻最多一个进程处于运行态,双核最多两个。另外两种状态:创建态:进程正在被创建,操作系统为进程分配资源,初始化PCB。终止态:由于程序无

2021-01-02 22:14:25 310

原创 操作系统-03.进程的定义、组成、组织方式、特征

进程的定义、组成、组织方式、特征1.进程定义程序:一个指令序列系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如代码存放位置)程序段、数据段、PCB三部分组成了进程实体(进程映像) ,一般情况下,我们把进程实体就简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB:而撤销进程,实质上是撤销进程实体中的PCB.PCB是进程存在的唯一标志1.进程的定义?答:经典定义:1,进程是程序的一次执行过程。2,进程是一个程序及其数据在处理机上顺序执行时所发生

2021-01-02 21:42:46 312

原创 操作系统-02.中断与异常及系统调用

中断和异常1. 中断的概念和作用中断产生背景:解决串行执行程序,系统资源利用率低的问题。为解决该问题,发明了操作系统,发生中断意味着需要操作系统介入管理。2. 中断的分类内中断(也称”异常“)外中断3. 外中断的处理过程...

2021-01-02 20:59:24 460

原创 剑指offer(c++)-04.从尾到头打印链表

链表1. 前景知识:链表应该是面试时被提及最频繁的数据结构。链表的结构很简单,它由指针把若干个结点连接成链状结构。链表的创建、插入结点、删除结点等操作都只需要20行左右的代码就能实现,其代码量比较适合面试。链表是一种动态数据结构,是因为在创建链表时,无须知道链表的长度。当插入一个结点时,只需要为新结点分配内存,然后调整指针的指向来确保新结点被链接到链表当中。内存分配不是在创建链表时一次性完成,而是每添加一个结点分配一次内存。由于没有闲置的内存,链表的空间效率比数组高。由于链表中的内存不是一

2021-01-02 16:31:17 142

原创 剑指offer(c++)-03.替换空格

替换空格1. 前景知识:字符串是由若干字符组成的序列。由于字符串在编程时使用的频率非常高,为了优化,很多语言都对字符串做了特殊的规定。C/C++ 中每个字符串都以字符’\0’作为结尾,这样我们就能很方便地找到字符串的最后尾部。但由于这个特点,每个字符串中都有一个额外字符的开销,稍不留神就会造成字符串的越界。// 如下代码: char str[10]; strcpy(str,"0123456789")`//若复制到str中其实需要11个字节,因为字符有10个,但是末尾还有‘\0’ ``

2021-01-02 13:58:33 201 2

原创 操作系统-01.操作系统的运行机制和体系结构

操作系统的运行机制和体系结构1. 运行机制#mermaid-svg-mJWRJtRA4gWyBEG8 .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-mJWRJtRA4gWyBEG8 .label text{fill:#333}#mermaid-svg-mJWRJtRA4gWyBEG8 .node rect,

2021-01-01 22:29:59 252

原创 剑指offer(c++)-02.二维数组中的查找

2.二维数组中的查找题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。如:target = 7,二维数组如下:[[1,2, 8, 9 ],[2,4, 9, 12],[4,7,10,13],[6,8,11,15]]二分值法思想:(拐点为二分值)观察数字的规律,第一行与最后一列构成递增数列(1,2,8,9,12,13,15),第二

2021-01-01 21:28:14 240

原创 剑指offer(c++)-01.数组中重复的数字

1.数组中重复的数字题目:在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中第一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。返回描述:如果数组中有重复的数字,函数返回true,否则返回false。如果数组中有重复的数字,把重复的数字放到参数out[0]中。(ps:out已经初始化,可以直接赋值使用。)方法1:哈希+遍历思想:利

2021-01-01 19:20:26 231 1

空空如也

空空如也

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

TA关注的人

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