自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一段自旋代码导致CPU飙升至200%!

自旋、Java线程状态与CPU的关系

2022-10-17 20:04:47 833 1

原创 图算法(普利姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法、骑士周游算法)

图算法(普利姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法、骑士周游算法)本篇博文通过学习尚硅谷韩顺平老师的《Java数据结构与算法》课程所做,在此非常感谢!!!文章目录图算法(普利姆算法、克鲁斯卡尔算法、迪杰斯特拉算法、弗洛伊德算法、骑士周游算法)普利姆算法概述应用分析克鲁斯卡尔算法概述应用分析上述两个算法的代码实现迪杰斯特拉算法概述应用代码实现弗洛伊德算法概述应用代码实现骑士周游算法概述分析代码实现普利姆算法概述普利姆(Prim)算法求最小生成树,也就是在包含n个顶点的连通图中,找出只有

2021-06-27 09:32:37 710 1

原创 算法——背包问题

算法——背包问题本篇博文通过学习尚硅谷韩老师《数据结构与算法》课程所做,在此非常感谢!文章目录算法——背包问题概念分析代码实现测试概念问题有一个背包,容量为4磅 , 现有如下物品:物品重量价值吉他(G)11500音响(S)43000电脑©32000要求达到的目标为装入的背包的总价值最大,并且重量不超出;要求装入的物品不能重复;思路分析背包问题主要是指一个给定容量的背包、若干具有一定价值和重量的物品,如何选择物品放入背包使物品的价值最

2021-06-21 14:03:11 2610

原创 图——创建、表示、遍历(深度优先和广度优先)

图——创建、表示、遍历(深度优先和广度优先)本篇博文通过学习尚硅谷韩老师《Java数据结构与算法》课程所做,在此非常感谢!文章目录图——创建、表示、遍历(深度优先和广度优先)概述无向图有向图带权图图(无向)的创建和表示图的创建和邻接矩阵表示的实现图(无向)的遍历深度优先广度优先测试概述须知:图是一种数据结构,其中节点可以具有零个或多个相邻元素,两个节点之间的连接称为边,节点也可以称为顶点;图的概念顶点(vertex)边(edge)路径无向图有向图…无向图有向图带权图图

2021-06-20 22:38:42 337 1

原创 SpringCloud学习笔记

SpringCloud学习笔记====文章目录SpringCloud学习笔记学习目标热部署Devtools(电脑不太好,我没开,要不太卡了)前置环境搭建EurekaEureka集群的配置微服务集群的配置服务发现Eureka的自我保护如何关闭默认的自我保护模式ZookeeperConsul使用三种服务注册中心(Eureka、Zookeeper、Consul)的异同Ribbon概述架构说明使用Ribbon的负载规则轮询规则负载均衡的原理自定义轮询规则实现负载均衡OpenFegin概述使用OpenFeign超

2021-06-20 15:12:56 150

原创 设计模式——模板方法模式

设计模式——模板方法模式这篇博文通过学习尚硅谷韩顺平老师《设计模式》课程所做,在此非常感谢!文章目录设计模式——模板方法模式概述问题引入代码实现UML编码测试概述基本介绍模板方法模式(Template Method Pattern),又叫模板模式(Template Pattern),在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行;简单说,模板方法模式 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结

2021-06-13 08:35:02 115

原创 设计模式——单例模式

设计模式——单例模式文章目录设计模式——单例模式概念饿汉式(静态常量)饿汉式(静态代码块)懒汉式(线程不安全)懒汉式(线程安全,同步方法)懒汉式(线程安全,改进第四种方式),注意该方式改进是失败的双重检查方式静态内部类方式枚举的方式概念基本介绍所谓单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法);八种写法的单例模式饿汉式(静态常量)饿汉式(静态代码块)懒汉式(线程不安全)懒汉式(线程安全,同步方法)懒

2021-06-13 07:59:26 124

原创 设计模式——外观模式

设计模式——外观模式文章目录设计模式——外观模式概述问题引入编码实现UML编码测试概述基本介绍外观模式(Facade),也叫“过程模式\门面模式:外观模式为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用;*外观模式通过定义一个一致的接口,用以屏蔽内部子系统的细节,使得调用端只需跟这个接口发生调用,而无需关心这个子系统的内部细节;细节和注意事项模式对外屏蔽了子系统的细节,因此外观模式降低了客户端对子系统使用的复杂性;外观模式对客户端与子

2021-06-12 08:09:19 168 3

原创 设计模式——解释器模式

设计模式——解释器模式文章目录设计模式——解释器模式概述问题引入编码实现UML编码测试概述基本介绍在编译原理中,一个算术表达式通过词法分析器形成词法单元,而后这些词法单元再通过语法分析器构建语法分析树,最终形成一颗抽象的语法分析树。这里的词法分析器和语法分析器都可以看做是解释器;解释器模式(Interpreter Pattern):是指给定一个语言(表达式),定义它的文法的一种表示,并定义一个解释器, 使用该解释器来解释语言中的句子(表达式)可以应用在将一个需要解释执行的语言中的句子表示为一个

2021-06-12 07:26:56 98 1

原创 设计模式——迭代器模式

设计模式——迭代器模式文章目录设计模式——迭代器模式概述问题引入编码实现UML编码测试概述基本介绍迭代器模式(Iterator Pattern)是常用的设计模式,属于行为型模式;如果我们的集合元素是用不同的方式实现的,有数组,还有 Java的集合类,或者还有其他方式,当客户端要遍历这些集合元素的时候就要使用多种遍历方式,而且还会暴露元素的内部结构,可以考虑使用迭代器模式解决;迭代器模式,提供一种遍历集合元素的统一接口,用一致的方法遍历集合元素,不需要知道集合对象的底层表示,即:不暴露其内部的结

2021-06-11 07:46:25 122

原创 设计模式——策略模式

设计模式——策略模式本片博文学习尚硅谷韩老师《设计模式》课程所做,在此非常感谢!文章目录设计模式——策略模式概述问题引入编码实现UML编码测试概述策略模式的基本介绍策略模式(Strategy Pattern)中,定义算法族(策略组),分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户;这算法体现了几个设计原则,第一、把变化的代码从不变的代码中分离出来;第二、针对接口编程而不是具体类(定义了策略接口);第三、多用组合/聚合,少用继承(客户通过组合方式使用策略);注意

2021-06-10 23:26:26 291 1

原创 设计模式——桥接模式

设计模式——桥接模式本篇博文通过学习尚硅谷韩老师《设计模式》课程所总结,在此非常感谢文章目录设计模式——桥接模式概述问题引入编码实现UML实现测试概述桥接模式的基本介绍桥接模式(Bridge 模式)是指:将实现与抽象放在两个不同的类层次中,使两个层次可以独立改变;桥接模式是一种结构型设计模式Bridge 模式基于类的最小设计原则,通过使用封装、聚合及继承等行为让不同的类承担不同的职责;桥接模式的主要特点是把抽象(Abstraction)与行为实现(Implementation)分离开来,从

2021-06-10 22:00:47 205

原创 设计模式——适配器模式

设计模式——适配器模式文章目录设计模式——适配器模式基本介绍问题引入类适配器模式UML代码创建测试细节和注意事项对象适配器基本介绍适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。其别名为包装器(Wrapper);适配器模式属于结构型模式;主要分为三类:类适配器模式、对象适配器模式、接口适配器模式;问题引入以生活中充电器的例子来讲解适配器,充电器本身相当于Adapter,220V

2021-06-04 23:43:23 112

原创 哈夫曼树和哈夫曼编码的实现和应用实例(压缩和解压)

哈夫曼树的实现和应用实例(压缩文件)哈夫曼树的基本介绍给定n个权值作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)赫夫曼树是带权路径长度最短的树,权值较大的结点离根较近名词解释路径和路径长度:在一棵树中,从一个结点往下可以达到的孩子或孙子结点之间的通路,称为路径。通路中分支的数目称为路径长度。若规定根结点的层数为1,则从根结点到第L层结点的路径长度为L-1结点的权及带权路径长度:若将树中结点赋给

2021-06-03 22:16:36 1772

原创 十大排序算法+图解分析(Java实现)

十大排序算法(Java实现)文章目录十大排序算法(Java实现)冒泡排序基本思想图解代码实现算法优化选择排序基本思想图解代码实现插入排序基本思想图解代码实现希尔排序基本思想图解代码实现算法优化快速排序基本思想图解代码实现归并排序基本思想图解代码实现计数排序基本思想图解代码实现算法优化桶排序基本思想图解代码实现基数排序基本思想图解代码实现堆排序基本思想图解代码实现总结冒泡排序基本思想冒泡排序:每次使用当前的数据a与当前数据的后一个数据b比较,如果a > b, 则交换;反之,不交换,第一次循环下来

2021-06-01 19:26:04 191

原创 线索化二叉树的创建和遍历(前序、中序、后序)

线索化二叉树的创建和遍历(前序、中序、后序)什么是线索化二叉树?首先,n个结点的二叉链表中含有n+1 公式 2n-(n-1)=n+1 个空指针域。利用二叉链表中的空指针域,存放指向该结点在某种遍历次序下的前驱和后继结点的指针(这种附加的指针称为"线索")在遍历结果中,一个结点的前一个结点,称为前驱结点在遍历结果中,一个结点的后一个结点,称为后继结点这种加上了线索的二叉链表称为线索链表,相应的二叉树称为线索二叉树(Threaded BinaryTree)。根据线索性质的不同,线索二叉树可分

2021-05-31 19:07:35 1353 2

原创 Java模拟哈希表并简单的使用

Java模拟哈希表并应用

2021-05-29 22:14:38 103

原创 设计模式——享元模式

设计模式——享元模式本篇博文通过尚硅谷韩老师《设计模式》课程所做,在此非常感谢!文章目录设计模式——享元模式问题引入基本介绍UML编码运行测试问题引入如果我们此时有开发一个用来装饰用户产品的网站,供多个用户使用,基本的需求基本一样,但是要求都有些不同,如下:有客户要求以新闻的形式发布;有客户要求以博客的形式发布;有客户希望以微信公众号的形式发布;…对此,我们采用享元模式;基本介绍享元模式(Flyweight Pattern) 也叫 蝇量模式: 运用共享技术有效地支持大量细粒度的对

2021-05-29 21:28:52 87

原创 递归实例——迷宫问题、八皇后问题

递归实例——迷宫问题、八皇后问题本篇博文通过尚硅谷韩顺平老师《Java数据结构与算法》课程所做,在此非常感谢!文章目录递归实例——迷宫问题、八皇后问题迷宫问题问题引入思路分析编码测试八皇后问题问题引入思路分析编码测试迷宫问题问题引入有一个迷宫,四周都是墙,求出一个小球从起点到终点的路径;思路分析我们先进行如下约定:将迷宫初始化为二维数组;当地图的(i, j)点为null,表示该点还没有探索过;当为"墙"时,表示该点为墙;当为"路"时,表示该点可以走;当为"*"时,表示该点已经探索过

2021-05-27 21:20:57 209

原创 设计模式——状态模式

设计模式——状态模式本篇博文通过尚硅谷韩老师《设计模式》课程所做,在此非常感谢!文章目录设计模式——状态模式基本介绍UML问题引入编码实现测试基本介绍状态模式(State Pattern):它主要用来解决对象在多种状态转换时,需要对外输出不同的行为的问题。状态和行为是一一对应的,状态之间可以相互转换;当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类状态模式的细节和注意事项代码有很强的可读性。状态模式将每个状态的行为封装到对应的一个类中;方便维护。将容易产生问题的

2021-05-26 18:22:38 101

原创 设计模式——装饰者模式

装饰者模式本篇博文通过尚硅谷韩老师《设计模式》课程所做,在此非常感谢!文章目录装饰者模式基本介绍UML问题引入编码测试基本介绍装饰者模式:动态的将新功能附加到对象上。在对象功能扩展方面,它比继承更有弹性,装饰者模式也体现了开闭原则(ocp);这里提到的动态的将新功能附加到对象和 ocp 原则,在后面的应用实例上会以代码的形式体现装饰者模式原理:装饰者模式就像打包一个快递1、Component,主体:比如类似前面的Drink、陶瓷、衣服 (Component),即被装饰者2、Concret

2021-05-25 11:07:38 122

原创 设计模式——组合模式

设计模式——组合模式本片博文通过尚硅谷韩老师课程所讲的《设计模式课程》做出的笔记,在此非常感谢!文章目录设计模式——组合模式基本介绍UML问题引入编码实现测试基本介绍组合模式(Composite Pattern),又叫部分整体模式,它创建了对象组的树形结构,将对象组合成树状结构以表示“整体-部分”的层次关系;组合模式依据树形结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构型模式;组合模式使得用户对单个对象和组合对象的访问具有一致性,即:组合能让客户以一致的方式处理个别对象

2021-05-24 20:02:45 70

原创 设计模式——建造者模式

设计模式——建造者模式本片博文通过尚硅谷韩老师《设计模式》课程所做,再次非常感谢!文章目录设计模式——建造者模式基本介绍细节和注意事项UML问题引入建造者模式及其编码测试基本介绍建造者模式(Builder Pattern) 又叫生成器模式,是一种对象构建模式。它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。建造者模式 是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们, 用户不需要知道内部的具体构建细

2021-05-23 20:10:18 132

原创 数据结构与算法,栈的应用——中缀、后缀(逆波兰)、前缀(波兰)表达式的生成和使用

栈的应用——中缀、后缀(逆波兰)、前缀(波兰)表达式的生成和使用本篇博文通过一个计算器例子来认识,中缀、后缀、前缀表达式的使用和生成文章目录栈的应用——中缀、后缀(逆波兰)、前缀(波兰)表达式的生成和使用问题引入思路分析和中缀表达式的概念后缀表达式中缀如何转后缀前缀表达式中缀如何转前缀编码自定义一个栈结构中缀表达式解决计算器需求中缀转后缀和前缀后缀表达式解决计算器需求前缀表达式解决计算器需求测试类测试中缀表达式转前缀和后缀表达式的测试后缀表达式计算器的测试前缀表达式计算器的测试中缀表达式计算器的测试致读

2021-05-22 21:32:37 101

原创 Java——使用数组和单链表模拟栈

使用数组和单链表来模拟栈本篇博文通过B站尚硅谷《Java数据结构与算法》课程所做,在此非常感谢韩老师!文章目录使用数组和单链表来模拟栈入栈和出栈的图解使用数组模拟栈使用单链表模拟栈编写测试类测试结果基本介绍栈的英文为(stack)栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。

2021-05-20 22:15:46 209

原创 springboot应用创建初始化流程和启动过程

springboot应用创建初始化流程和启动过程文章目录springboot应用创建初始化流程和启动过程创建SpringBoot应用创建初始化流程分析分析结论SpringBoot应用启动过程分析分析StopWatch 的启动进入HEADLESS模式获取所有的运行监听器SpringApplicationRunListenersstarting所有的运行监听器SpringApplicationRunListeners保存命令行参数准备基础环境返回或创建基础环境信息配置环境将配置好的环境信息绑定(保存)所有的S

2021-05-20 11:58:29 183

原创 IDEA基本使用以及常用的配置和快捷键(会持续完善)

IDEA的基本使用文章目录IDEA的基本使用一、基本设置1、进入设置2、编辑区的字体可以使用滚轮放大缩小3、鼠标悬浮在代码上有提示4、自动导包和优化多余的包5、导入同一个包下的类超过指定个数时,合并为 import ...*6、显示行号、方法与方法间的间隔符7、忽略大小写进行提示8、设置默认字体,字体大小,行间距9、修改代码中注释的样式(如颜色等)10、修改类头的文档注释信息11、设置项目文件编码12、设置自动编译13、设置省电模式14、设置代码显示结构15、如何导入jar包16、生成序列化版本号二、常用

2021-05-19 21:43:43 337 12

原创 redis基础学习笔记

学习Redis的基础笔记本片博文是学校尚硅谷Redis课程所做,在此非常感谢!!!文章目录学习Redis的基础笔记NoSQL数据库Redis概述和安装安装redis6.2.1Redis的启动-----在`/user/local/bin/目录下`Redis的关闭Redis相关知识的介绍常用五大数据类型数据库相关的key操作Redis键(KEY)String类型的数据List类型的数据Set类型的数据Hash类型的数据Zset(sorted set)类型的数据Redis的发布者和订阅者模式Redis6中的新

2021-05-18 22:14:41 159

原创 设计模式——命令模式

设计模式——命令模式基本介绍:命令模式(Command Pattern):在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计;命名模式使得请求发送者与请求接收者消除彼此之间的耦合,让对象之间的调用关系更加灵活,实现解耦;在命名模式中,会将一个请求封装为一个对象,以便使用不同参数来表示不同的请求(即命名),同时命令模式也支持可撤销的操作;通俗易懂的理解:将军发布命令,

2021-05-17 20:52:38 98

原创 设计模式——工厂模式

设计模式——工厂模式本篇博文通过学习尚硅谷设计模式课程所做的总结,在此表示感谢!文章目录设计模式——工厂模式简单工厂模式UML编码实现制作披萨类的构建简单工厂类的创建测试工厂方法模式UML编码实现工厂方法模式的核心测试抽象工厂模式UML编码实现抽象工厂模式的核心测试工厂模式的小结这篇文章通过一个披萨订购的问题来分别引出:简单工厂模式、工厂方法模式、抽象工厂模式;看一个项目需求:有一个披萨的项目:要便于披萨种类的扩展,要便于维护,披萨的种类很多(比如 GreekPizz、CheesePizz

2021-05-16 12:25:08 84 1

原创 设计模式——访问者模式

设计模式——访问者模式这篇博文是通过尚硅谷韩老师设计模式课程所总结,在此表示感谢!文章目录设计模式——访问者模式问题引入UML编码实现Person类(相当于上面UML的Element)的编写具体的Person类编写Action类(相当于上面UML的Visitor)的创建具体Action类的编写ObjectStruct类的编写测试类Client的编写测试*基本介绍:*访问者模式(Visitor Pattern),封装一些作用于某种数据结构的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元

2021-05-15 08:02:48 81

原创 设计模式——职责链模式

设计模式——职责链模式这篇博文是根据尚硅谷韩老师的设计模式课程做出的总结,在此非常感谢!文章目录设计模式——职责链模式问题引出UML编码实现编写请求类PurchaseRequest编写请求处理类的基类Approver请求处理类DepartmentApprover请求处理类CollegeApprover请求处理类ViceSchoolMasterApprover请求处理类SchoolMasterApprover测试类Client测试*基本介绍:*职责链模式(Chain of Responsibilit

2021-05-14 21:42:36 100

原创 单向环形链表——约瑟夫问题

单项环形链表——约瑟夫问题约瑟夫问题:设编号为1、2、3、…n的n个人围成一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的哪个人出列,他的下一个人又从1开始报数,数到m的那个人又出列,依次类推,直到所有人都出列为止,由此产生一个出队列的编号;分析:使用不带头结点的环形单链表的数据结构;代码直接先把所有的代码展示出来,并进行一一解读,如下代码:数据类Person的代码如下:package edu.hebeu.circle;public class Person {

2021-05-14 09:11:10 422 6

原创 设计模式——观察者模式

观察者模式这篇博文是根据B站尚硅谷设计模式课程韩老师所讲而做的,在此表示感谢!文章目录观察者模式案例介绍UML编码编写观察者的接口类编写管理观察者的接口编写能够测量、修改天气数据的类编写"第三方的接口“编写测试类测试观察者模式:对象之间多对一依赖的一种设计方案,被依赖的对象为 Subject,依赖的对象为 Observer,Subject通知 Observer 变化,比如奶站\气象局\报社等就类似于 Subject,Subject是 1 的一方,Observer是用户是多的一方;基本介绍:观察者

2021-05-13 07:53:14 131

原创 JUC学习笔记

JUC的学习笔记JUC:即java.util.concurrent包里的相关知识内存不可见性与内存可见性的概念先来可一个测试结果不可思议的例子,如下代码:public class Demo1 { public static void main(String[] args) { MyRunnable myRunnable = new MyRunnable(); new Thread(myRunnable).start(); // 启动线程 while(true) {

2021-05-12 12:12:18 146

原创 Java模拟单链表

本篇博文通过Java模拟一个单向链表本篇博文通过Java模拟一个能够实现:头插、尾插、指定插入、修改、删除、打印等功能的带头节点的单向链表;文章目录本篇博文通过Java模拟一个单向链表创建数据域内的存储类User创建用于构成单向链表的节点类Node单向链表的构建和功能完善头插法尾插法在某一位置插入删除节点修改节点测试类Test的编写运行结果展示尾插法测试头插法测试按照id升序插入(指定位置插入)测试修改节点数据测试删除节点测试创建数据域内的存储类User创建用来存储在单向链表的data域内的类型Us

2021-05-11 23:45:11 277

原创 设计模式——代理模式

这篇博文通过Java来认识23种设计模式中的代理模式代理模式的基本介绍代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能;被代理的对象可以是远程对象、创建开销大的对象或需要安全控制的对象;代理模式有不同的形式, 主要有三种 静态代理、动态代理 (JDK 代理、接口代理)和 Cglib 代理 (可以在内存动态的创建对象,而不需要实现接口, 他是属于动态代理的范畴) ;静态代

2021-05-11 15:54:32 73

原创 使用数组模拟环形队列

这篇博文用来使用数组模拟环形队列这个项目是根据B站尚硅谷韩老师的数据结构与算法课程学习总结的,在此非常感谢!队列的基本介绍:队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出示意图:(使用数组模拟队列示意图)思路分析使用数组模拟环形队列,一定要考虑数组的下标越界异常,如下思路分析:记头指针为front,尾指针为rear,队列容量为capacity;尾索引的下一个为头索引时表示队列满,即将队列容量空出一个作为约定,这个在

2021-05-10 21:37:35 342

原创 一个实战来了解学习稀疏数组

一个实战来了解学习稀疏数组这篇博客是本人在学习了B站尚硅谷韩老师的数据结构课程后所做,在此表示感谢!文章目录一个实战来了解学习稀疏数组稀疏数组稀疏数组的基本介绍应用实例项目编写编写工具类棋盘类的编写(二维数组相关的类)保存棋盘状态类的编写(稀疏数组相关的类)测试类的编写测试稀疏数组引入需求:编写的五子棋程序中,有存盘退出和续上盘的功能,我们可以使用二维数组记录棋盘,如下:但是我们发现使用传统的二维数组,会存在大量的没有意义的无效数据,导致内存的浪费,针对如上的情况,我们可以使用稀疏数组来优化;

2021-05-09 22:58:09 112

原创 SpringBoot对静态资源映射规则和请求映射映射处理的原理解析

SpringBoot对静态资源映射规则和请求映射处理的原理解析这篇博文是学校B站尚硅谷雷老师的SpringBoot2做出的笔记总结,再次表示由衷的感谢!文章目录SpringBoot对静态资源映射规则和请求映射处理的原理解析SpringBootwebjars静态资源目录配置自定义的静态资源目录静态资源访问前缀自定义欢迎页自定义favicon静态资源映射规则的原理SpringBoot对请求处理REST风格SpringBoot如何支持使用REST风格支持REST风格的原理分析SpringBoot请求映射原理的

2021-05-08 19:03:52 236

空空如也

空空如也

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

TA关注的人

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