自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 问答 (2)
  • 收藏
  • 关注

原创 SpringBoot文件上传

public ResultMessage saveFile(MultipartFile file) { ResultMessage resultMessage = new ResultMessage(); if (!file.isEmpty()) { //获取文件名称 String uploadFileName = file.getOriginalFilename(); //设置存储文件路径

2021-10-08 22:19:22 105

原创 红黑树变换规则简述

程序员司马讲解二叉树(B站)遍历->二分法->二叉树->二叉查找树->红黑树(自平衡的二叉查找树)->二叉平衡树(理想状态)红黑树性质每一个结点不是红色就是黑色红色结点不能够连接在一起根节点必须为黑色叶子结点均为黑色注意最后一个是NULL,所以表面上叶子结点为红色,但其实是没有问题的红黑树的变换规则所有插入的点默认都是红色,否则全黑色就是普通二叉树了,下一步也就无法按照规律变换以达到自平衡。变色规则当前结点是红色,父结点是红色,且它的叔叔...

2020-08-01 22:48:26 259 1

原创 《MySQL必知必会》学习笔记

MySQL已经成为世界上最受欢迎的数据库管理系统之一。无论是用 在小型开发项目上,还是用来构建那些声名显赫的网站,MySQL都证明 了自己是个稳定、可靠、快速、可信的系统,足以胜任任何数据存储业 务的需要。MySql的使用--选择数据库use database; --返回可用数据库列表show database; --返回一个数据库内表的列表show tables; --对一个表的每个字段返回一行,行中包括字段名、数据类型、是否允许NULL、键信息、默认值以及其他信息等sho...

2020-07-26 15:54:29 695

原创 JVM学习笔记(四)——Java内存模型和线程安全

由于计算机的运算能力十分强大而且和计算机的存储和通信子系统的的速度差距过大,大量时间都花费在I/O、网络通信和数据库访问上,因此让计算机同时处理几项任务是最容易而且也更有效的“压榨”计算机运算能力的手段。处理器至少要与内存交互,如读取数据、存储运算结果等。这个I/O操作是几乎无法消除的。而且由于计算机存储设备和处理器运算速度上相差好几个数量级,因此我们在内存和处理器之间加入一层读写速度尽可能接近处理器运算速度的高速缓存来作为内存和处理器之间的缓冲:将运算需要使用到的数据复制到缓存中,让运算能快速进...

2020-07-25 09:07:30 212

原创 JVM学习笔记(三)——类加载机制

虚拟机的类加载机制就是虚拟机把Java类的源码编译为字节码后,将其读取进内存,并对数据进行校验、转换解析和初始化、最终形成可以被虚拟机直接使用的Java类型。一、类加载的时机类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用、卸载7个阶段。其中验证、准备、解析三个阶段统称为连接。其中解析的阶段的顺序可能会发生变化,某些情况下可能会在初始化后再开始,另外注意这里的几个阶段是按顺序开始,而不是按顺序进行或完成,因为这些阶段通常都是互相交叉地混

2020-07-25 09:05:17 232

原创 JVM学习笔记(二)——垃圾收集器和内存分配策略

Java与C++之间有一堵由内存动态分配和垃圾收集技术所围成的“高墙”,墙外的人想进去,墙内的人却想出去。对于Java内存运行时区域的各个部分,其中程序计数器、虚拟机栈、本地方法栈3个区域的内存随线程而生,随线程而灭。所以方法或者线程结束的时候,内存就自然的随着回收了。而Java堆和方法区的内存则不一样,这些部分的内存是需要动态分配的。栈中的栈帧随着方法的进入和退出而有条不紊地执行着入栈和出栈的操作。每一个线栈中分配多少内存基本上是在类结构确定下来时就已知的。Java堆和方法区中,一个接口的

2020-07-25 09:04:02 146

原创 JVM学习笔记(一) ——Java虚拟机内存结构

JAVA虚拟机内存结构JAVA虚拟机内存结构可分为公有和私有两部分公有: 堆、方法区、运行时常量池私有: 程序计数器、JAVA虚拟机栈、本地方法栈1.1 程序计数器可以看当前线程所执行字节码的行号指示器分支、循环、跳转、异常处理等基础功能都需要依赖计数器完成Java虚拟机的多线程是通过线程轮流切换并分配执行时间的方式来实现的,因此任何一个时刻,一个处理器(多核处理器的一个内核)都只会执行一条线程中的指令。因此,通过程序计数器可以做到线程切换后能够恢复到正确的执行位置。如

2020-07-25 09:01:40 109

原创 KMP算法及next数组优化

title: KMP算法categories: Airthmetictags: Arraydeclare: truewordCount: trueabbrlink: 2da0528ddata: 2020-07-21 13:35:10[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BwiuEzpu-1595309423313)(https://i.loli.net/2020/07/21/v6rbVX8UqOip12W.jpg)]一、KMP算法简介当目标串txt.

2020-07-21 13:32:58 842

空空如也

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

TA关注的人

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