自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 剑指offer全通关记录

剑指offer全通关记录JZ15 反转链表JZ15 反转链表指针cur表示待翻转结点,pre表示待翻转结点的前一个结点,next表示待翻转结点的下一个结点。当cur不为空,不断循环cur.next=pre把当前结点下一个变成上一个结点就行了....

2020-09-09 10:08:26 1118

原创 看完这篇单例模式,终于敢和面试官对线了

学会这几种单例模式的写法,终于敢和面试官对线了一、懒汉模式单例模式相信大家都很熟悉了,是一种很常用的设计模式,作者曾经在一次面试中要求写出单例模式,想了想单例模式还是简单的,随手就写了如下代码。/** * @author Meng * @date 2020/8/8 */public class Singleton { private static Singleton instance; private Singleton(){} public static Si

2020-08-12 23:45:49 1186 1

原创 我悟了!难怪阿里禁止使用Executors 创建线程池

为何阿里禁止使用Executors 创建线程池阿里的《Java 开发手册》有下面这一条编程规约。要想深刻的理解这一条,我们需要了解线程池的几个参数。我们看下ThreadPoolExecutor构造函数所需要的参数。public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime,

2020-08-05 23:20:21 1638

原创 云服务器部署nacos+nginx集群(mysql8版本)

云服务器部署nacos+nginx集群(mysql8版本)nacos系统架构图VIP即虚拟ip,我们可以用nginx来充当这个角色系统环境及版本一台阿里云服务器 系统:Centos7.7 公网ip:39.98.220.231 内网172.26.125.6nacos版本:1.2.1mysql版本:8.0.19nginx版本:1.9.9nacos1:172.26.125.6:333...

2020-04-25 22:00:32 2010 3

原创 HashMap的工作原理和源码实现(三)红黑树的插入

HashMap中的红黑树插入方法balanceInsertion摘要:     HashMap是java最常用的容器之一,本文会通过阅读源码的方式来理解HashMap中是如何进行红黑树的插入红黑树的插入详细解析可以看下我这篇文章红黑树详解(二)红黑树的插入(附动图和案例)简单的用一张图概括一下源码及注释如下,需要注意的是参数root...

2020-03-07 22:54:06 1421 2

原创 蓝桥杯 算法训练 表达式计算(中缀表达式)

资源限制时间限制:1.0s 内存限制:256.0MB问题描述  输入一个只包含加减乖除和括号的合法表达式,求表达式的值。其中除表示整除。输入格式  输入一行,包含一个表达式。输出格式  输出这个表达式的值。样例输入1-2+3*(4-5)样例输出-4数据规模和约定  表达式长度不超过100,表达式运算合法且运算过程都在int内进行。本题就是简单的利用栈计算中缀表达式...

2020-03-07 18:37:05 1640

原创 红黑树详解(二)红黑树的插入(附动图和案例)

红黑树详解(二)红黑树的插入(附动图和案例)摘要:     在很多源码涉及到大量数据处理的时候,通常都是用红黑树这一数据结构。红黑树是一种自平衡的二叉查找树,它能在进行插入和删除操作时通过特定操作保持二叉查找树的平衡,获得较高的查找性能。本文将使用图文详细的分析红黑树的插入​ 回顾一下红黑树的五条性质 1.节点不是红色就...

2020-03-03 12:18:50 2730 3

原创 红黑树详解(一)红黑树的介绍和操作

红黑树详解(一)红黑树的介绍和操作摘要:     在很多源码涉及到大量数据处理的时候,通常都是用红黑树这一数据结构。红黑树是一种自平衡的二叉查找树,它能在进行插入和删除操作时通过特定操作保持二叉查找树的平衡,获得较高的查找性能。本文将使用图文详细的分析红黑树一、红黑树解决了什么问题​ 首先,我们要知道二叉搜索树,在不为空的情况下...

2020-02-26 21:27:26 4714

原创 HashMap的工作原理和底层实现(二)红黑树的左旋、右旋

HashMap中的红黑树左旋、右旋摘要:     HashMap是java最常用的容器之一,本文会通过阅读源码的方式来理解HashMap中是如何进行红黑树的左旋和右旋一、什么是左旋和右旋        红黑树的性质 每个节点要么是黑色,要么是红...

2020-02-16 14:24:00 2125 1

原创 蓝桥杯 算法训练 最大值路径(动态规划)

蓝桥杯 算法训练 最大值路径(动态规划)资源限制时间限制:1.0s 内存限制:256.0MB问题描述刷微博,编程序。如下图所示,@北京发布 提出了如下“头脑震荡”问题。对此问题做一般化描述:  有n阶方阵,从矩阵的左下角元素为起点,从行或列(水平或垂直)两个方向上移动,直到右上角。求出有多少条路径可以使得经过的元素累加值最大,最大值是多少。输入格式共有n+1行。  第一行...

2020-02-05 20:55:04 2242 1

原创 蓝桥杯 算法训练 K好数(动态规划)

蓝桥杯 算法训练 K好数(动态规划)资源限制时间限制:1.0s 内存限制:256.0MB问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格...

2020-02-02 19:30:20 1329

原创 实践中理解动态规划(简单详细)

实践中理解动态规划(简单详细)摘要:     动态规划(dp)是算法比赛中常考的算法,个人感觉也是最有难度的算法。因此本文会介绍动态规划在实践中的几个步骤来理解动态规划一、什么是动态规划​ 动态规划就是问题的最优解如果可以由子问题的最优解推导得到,则可以先求解子问题的最优解,在构造原问题的最优解;​ 简单来说...

2020-02-01 11:55:02 1239

原创 动手实现一个破产版tomcat

一步一步实现一个破产版tomcattomcat服务器在我们java后台开发中可以说是经常接触到的,每次当我们写好我们的程序时,都要启动tomcat才能生效。那么我们有没有想过tomcat到底为我们完成了什么事情?再进一步的说,我们开发时肯定离不开Servlet,那就有一个疑问为什么我们写好的Sevlet并不需要编写一个main函数new一个示例就可以生效执行我们的代码?其实这些工作都是由tom...

2020-01-16 16:16:44 1153

原创 广度优先搜索的实际应用

广度优先搜索的实际应用摘要:     广度优先搜索常常在算法比赛中用于求搜索类型题目的最短路径问题,需要用到队列这一种数据结构.与深度优先搜索不同,广度优先搜索先搜索相邻的结点,更容易找不到目标点,使用与只需求解最优解。若需要需求全部路径,则还是选用深度优先搜索以蓝桥杯一道简单题目作为入门问题描述​ 学霸抢走了大家的作业,班长为...

2020-01-15 17:17:11 2971

原创 HashMap的工作原理和底层实现(一)

HashMap的工作原理和底层实现(一)摘要:     HashMap是java最常用的容器之一,本文会先介绍一下哈希表,然后在jdk1.8的基础上,介绍HashMap的数组+链表+红黑树的原理及其它的底层实现一、什么是哈希表        哈希表是根据...

2020-01-15 17:04:09 1273 1

空空如也

空空如也

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

TA关注的人

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