自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode刷题总结 - LeetCode 热题 100 - 持续更新

LeetCode 热题 100其他系列哈希1. 两数之和49. 字母异位词分组128. 最长连续序列双指针27. 移除元素283. 移动零11. 盛最多水的容器剑指 Offer II 007. 数组中和为 0 的三个数42. 接雨水滑动窗口438. 找到字符串中所有字母异位词3. 无重复字符的最长子串字串560. 和为 K 的子数组剑指 Offer 59 - I. 滑动窗口的最大值普通数组最大子数组和56. 合并区间189. 轮转数组238. 除自身以外数组的乘积矩阵73. 矩阵置零54. 螺旋矩阵48.

2023-10-13 22:33:41 463

原创 LeetCode刷题总结 - 面试经典 150 题 -持续更新

LeetCode刷题总结 - 面试经典 150 题 - 持续更新其他系列数组 / 字符串88. 合并两个有序数组27. 移除元素26. 删除有序数组中的重复项80. 删除有序数组中的重复项 II169. 多数元素189. 轮转数组121. 买卖股票的最佳时机122. 买卖股票的最佳时机 II55. 跳跃游戏274. H 指数380. O(1) 时间插入、删除和获取随机元素238. 除自身以外数组的乘积739. 每日温度42. 接雨水双指针125. 验证回文串392. 判断子序列167. 两数之和 II -

2023-07-29 19:59:20 5709 2

原创 LeetCode刷题总结 - 剑指offer系列 - 持续更新

LeetCode刷题总结

2022-12-24 12:15:01 2455 1

原创 Fastjson与Gson的简单使用

Json解析工具

2022-10-07 20:41:38 808 1

原创 入门级正则表达式

正则表达式

2022-09-03 23:08:41 381

原创 @PropertySource读取自定义配置

将自定义配置信息加载到spring的环境变量中

2022-08-14 16:18:37 725

原创 @ControllerAdvice + ResponseBodyAdvice实现返回统一结构

实现返回统一数据结构

2022-08-13 23:40:38 1052 2

原创 参数校验 + 全局异常拦截

参数校验以及异常拦截

2022-07-23 20:50:29 904

原创 swagger3的简单使用

swagger3的简单使用

2022-07-17 15:27:30 569

原创 Jedis的简单使用

Jedis简单使用

2022-07-16 18:49:13 1151

原创 vim的暂存档、救援回复与开启时的警告讯息

vim的暂存档filename.swp

2022-06-08 15:16:27 276

原创 贪心经典算法

贪心算法 笔记

2022-06-06 15:18:34 108

原创 动态规划经典算法

动态规划 笔记

2022-06-06 15:16:13 127

原创 递归与分治

笔记

2022-06-06 15:13:13 100

原创 vim的额外功能

vim的额外功能

2022-06-05 15:26:17 137

原创 vi和vim的常用命令

vi和vim的常用命令

2022-06-04 19:37:59 415

原创 MySQL行锁与表锁

MySQL锁机制的简单理解

2022-04-29 17:16:20 673 1

原创 最长公共子序列 - LCS

最长公共子序列 - LCS问题描述子序列定义子串定义公共子序列定义最长公共子序列(以下简称LCS)动态规划解决子问题划分及依赖关系递推公式伪代码复杂度分析问题描述子序列定义给定一个序列X=<x1,x2,x3,x4…,xm>,另一个序列Z=<z1,z2,z3,z4…,zk>,若存在一个严格递增的X的下标序列<i1,i2,i3,…,ik>对所有的1,2,3,…,k,都满足x(ik)=zk,则称Z是X的子序列比如Z=<B,C,D,B>是X=<A,B,C

2022-04-25 14:21:23 2785

原创 矩阵连乘 - 动态规划

矩阵连乘 - 动态规划

2022-04-22 17:42:05 353

原创 哈夫曼编码

哈夫曼编码概念前缀码的二叉树及权值哈夫曼编码的设计思想实例伪代码概念哈夫曼编码是一种字符编码方式,是可变长编码的一种,1952年提出,依据字符在文件中出现的频率来建立一个用0,1串表示各字符,使平均每个字符的码长最短的最优表现形式。应用于图像压缩和大容量存储为了正确解码,可变长编码必须满足,二元前缀码的性质:任何字符的代码都不能作为其他字符代码的前缀非前缀码的例子a:001, b:00,c:010,d:01解码的歧义,例如字符串0100001解码1:01,00,001 d, b, a解码

2022-04-20 23:14:44 34922

原创 单源最短路径问题 - Dijkstra

单源最短路径问题 - Dijkstra问题描述Dijkstra算法实例伪代码问题描述给定带权有向图G=(V, E, W),V:顶点集,E:边集,W:边的权值集合。每条边e = <i,j>的权w(e)为非负实数,表示从i到j的举距离。源点 u 属于 V。求:从源点u到出发到达其它节点的最短路径。(路径长度:指路径上所有边上的权值之和)如下图所示:为解决单源最短路径问题,我们这里介绍一个最典型的算法,Dijkstra算法Dijkstra算法实例第一步:下一步:下一步:

2022-04-16 22:24:46 830

原创 ElasticSearch入门到进阶

ElasticSearch入门到进阶ElasticSearch入门初识ElasticSearch安装ElasticSearchElasticSearch核心概念操作ElasticSearchElasticSearch JavaAPIElasticSearch入门ElasticSearch是一个搜索服务器说到搜索,大家第一时间想到的是什么?百度、谷歌、商城的搜索功能…其实搜索就是查询。 select * from xxx where xxx like %xxx% -> 关系型数据库那么像

2022-04-07 23:11:06 2750 2

原创 分治算法简单介绍

分治算法分治策略的基本思想基本思想分治策略注意二分查找循环赛日程表归并排序快速排序分治策略的基本思想基本思想将一个难以直接解决的大问题,分解成一些规模较小的相同的子问题,各个问题相互独立;递归地解决各个子问题,将子问题的解归并成原问题的解分治策略将原始问题划分或者归结为规模较小的子问题递归或者迭代求解每个子问题将子问题的解 综合 或者 不综合 得到原问题的解注意子问题和原问题性质完全一样子问题之间可彼此独立地求解递归停止时子问题可直接求解二分查找设计思想:通过x与中位数

2022-04-06 13:26:59 861

原创 RabbitMQ入门到进阶

RabbitMQ入门到进阶

2022-04-04 19:09:05 781

原创 JWT的简单理解

JWT入门学习什么是JWT(what)简单介绍JWT能做什么为什么使用JWT(why)传统Session认证的弊端JWT的认证流程JWT认证的优势JWT的结构1、Header2、Payload3、Signature如何在Java中使用JWT(how)入门使用什么是JWT(what)简单介绍官网地址: https://jwt.io/introduction/翻译: json web token(JWT)是一个开放标准,它定义了一种紧凑的、自包含的方式,用于各方之间以JSON对象安全地传输信息。此信息

2022-03-31 21:57:46 1077

原创 自定义注解 配合 拦截器 实现接口限流

自定义注解 配合 拦截器 实现接口限流

2022-03-29 12:50:23 877

原创 fastjson的常用操作

fastjson的常用操作Java对象 转成 JSON字符串JSON字符串 转成 Java对象复杂JSON对象 的操作首先引入一个JavaBean类public class Admin { private int id; private String name; private String password; public int getId() { return id; } public void setId(int id) {

2022-03-29 10:50:12 1029

原创 汉诺塔问题

汉诺塔问题在经典汉诺塔问题中,有 3 根柱子及 N 个不同大小的穿孔圆盘,盘子可以滑入任意一根柱子。一开始,所有盘子自上而下按升序依次套在第一根柱子上(即每一个盘子只能放在更大的盘子上面)。移动圆盘时受到以下限制:(1) 每次只能移动一个盘子;(2) 盘子只能从柱子顶端滑出移到下一根柱子;(3) 盘子只能叠在比它大的盘子上。【面试题 08.06. 汉诺塔问题】解题思路:递归结束条件:只剩下最后一个盘子需要移动递归函数主功能:1.首先将 n-1 个盘子,从第一个柱子移动到第二个柱子2.

2022-03-23 11:22:09 162

原创 字符串判空

字符串判空StringUtils.isEmpty(已被弃用)StringUtils.hasLengthStringUtils.hasText总结、测试StringUtils.isEmpty(已被弃用)源码:/** @deprecated */@Deprecatedpublic static boolean isEmpty(@Nullable Object str) { return str == null || "".equals(str);}功能:若字符串为 null 或者 空串

2022-03-21 11:37:58 3839

原创 Spring进阶面试总结

Spring进阶面试总结Spring中bean的生命周期?什么是循环依赖?描述一下Spring是如何解决循环依赖问题的?可不可以不使用三级缓存,只使用二级缓存?或者三级缓存的作用?Spring中bean的生命周期?什么是循环依赖?简单举个例子:A对象依赖B对象,B对象依赖A对象。那么循环依赖是个问题吗?如果不考虑spring,单纯的在java中循环依赖并不会出现问题,因为对象之间相互依赖是很正常的事情但是,在Spring中若不进行特别处理,循环依赖就会成为一个问题,为什么?因为在Sprin

2022-03-18 13:15:13 313 1

原创 JVM面试个人总结

JVM面试个人总结JVM 的内存模型以及分区情况和作用JVM 预定义的类加载器有哪几种?什么是双亲委派机制?字节码文件中包含哪些内容?怎么理解常量池?什么是内存溢出?什么是内存泄漏?内存泄漏和内存溢出有什么关系?常用的JVM启动参数有哪些?什么是垃圾垃圾判断算法标记阶段:引用计数算法标记阶段:可达性分析算法垃圾清除算法清除阶段:标记-清除算法清除阶段:标记-整理算法清除阶段:复制算法对比三种清除算法分代收集强软弱虚引用说一下你知道的垃圾回收器?Java8默认使用的垃圾收集器是什么?CMS收集器1: Init

2022-03-18 13:14:48 403

原创 Spring基础面试总结

Spring基础面试总结简单介绍一下SpringSpring中bean的作用域说一下你对AOP的理解?AOP几个应用场景:说一下AOP里面的几个名词的概念Spring通知(Advice)有哪些类型?BeanFactory和ApplicationContext有什么区别?@Autowired注解与@Resource注解的区别SpringBoot和SpringCloud的区别和关系?简单介绍一下SpringSpring是一个轻量级的IoC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架,目的是

2022-03-18 13:14:16 313

原创 Java反射机制

Java反射机制反射的概念Class类Class类的介绍Class对象的获取通过Class对象获取 并 使用成员变量通过Class对象获取 并 使用构造方法通过Class对象获取 并 使用成员方法总结反射的概念Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它任意一个方法和属性。这种动态获取类信息以及动态调用对象方法的功能称为Java语言的反射机制。Class类Class类的介绍Class类是Java中十分重要的一个类,我们想要使用

2022-01-18 18:15:05 711

原创 JZ32 从上往下打印二叉树(层次遍历)

JZ32 从上往下打印二叉树前言问题概述代码实现前言这个题的另一个名字是——二叉树的层次遍历。其实这题是一个模板题,因为在二叉树相关的好多题中都会用到二叉树的层次遍历。大家都知道,二叉树的遍历方式按图来说其实可分两大类:深度优先 和 广度优先深度优先:就是我们常听说的 前序遍历、中序遍历、后序遍历广度优先:就是本题题解 层次遍历问题概述问题链接:【JZ32 从上往下打印二叉树 】描述不分行从上往下打印出二叉树的每个节点,同层节点从左至右打印。例如输入{8,6,10,#,#,2,1},如以

2022-01-03 14:02:29 347

原创 红黑树(Red Black Tree)的简单理解

红黑树(Red Black Tree)的简单理解前言介绍AVL树的简单介绍为什么需要AVL树?AVL树的调整过程AVL树的缺点红黑树与AVL相比234树的简单介绍234树的概念234树的添加和删除234树与红黑树的对应关系红黑树(Red Black Tree)红黑树的规则红黑树的常见操作添加操作删除操作红黑树的代码实现前言介绍红黑树是在1972年由Rudolf Bayer发明的,当时被称为平衡二叉B树(symmetric binary B-trees)。后来,在1978年被 Leo J. Guibas

2021-12-31 17:30:02 1237

原创 每K个一组反转链表

每K个一组反转链表前言问题描述解题思路代码实现前言上一章连接【链表反转问题】上一章已经讲过了单向链表的反转,接下来我们在上一章的基础上来一道进阶题:每K个一组反转链表问题描述问题连接:【每K个一组反转链表】描述给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序。说明:你需要自行定义链表结构,将输入的数据保存到你的链表中;你不能只是单纯的改变节点内部的值,而是需要实际

2021-12-30 20:22:14 273

原创 判断单链表是否有环?以及入环节点

判断单链表是否有环?以及入环节点判断单链表是否有环?问题概述方案一:hash法解题思路代码实现方案一:快慢指针法解题思路代码实现链表中环的入口结点问题链接解题思路代码实现判断单链表是否有环?问题概述如果存在环就返回true,不存在就false接下来我提供两种思路利用hash快慢指针方案一:hash法解题思路这方法其实相对来说比较容易理解。大致思路就是:遍历单链表,在遍历的时候,先判断当前节点索引是否在hash表中,如果不存在则将当前节点的索引存入到hash表中,如果当前节点索引已经

2021-12-26 21:04:14 1075

原创 链表反转问题

链表反转问题前言题目链接解法一:头插法尾插法头插法头插法实现链表反转思路代码实现解法二:双指针 - 局部反转局部反转实现实链表反转思路代码实现前言还有两个月的时间就是金三银四的春招了,我也开始刷算法题了。 在这里给大家推荐一个刷题的入门网站【剑指offer-牛客网】【剑指offer】这一块儿的题大多数是简单或中等难度的题,很适合刚开始刷题的小伙伴(听说大厂笔试题好多都是里面相同类型的(#^.^#))。话不多说,开始讲解链表反转这个问题。这里我会介绍两种方式,一种是头插法的方式一种是利用双指针

2021-12-25 17:57:20 620 1

原创 计算机网络 - 面试篇

计算机网络 - 面试篇在浏览器地址栏输入一个URL后回车,执行的全部过程浏览器发起一个请求到收到响应中间经历了哪些过程?HTTP发送请求和接收响应的整个流程OSI七层模型讲一下网络五层模型,每一层的职责?说一下IP地址的作用,以及MAC地址的作用。IP地址有哪些分类?IPV4 地址不够如何解决403和500状态分别讲解一下,他们之间有什么区别TCP 特点请你说说传递到IP层怎么知道报文该给哪个应用程序,它怎么区分UDP报文还是TCP报文?ICMP 有哪些应用?tcp和udp的区别tcp、udp、http、h

2021-12-19 15:58:01 3400 5

原创 Prometheus监控oracle的配置

Prometheus监控oracle的配置1、下载oracle_exporter2、解压并授权3、启动oracledb_exporter前的配置环境变量配置共享库配置4、配置Prometheus踩过的坑1、下载oracle_exporter注意,oracle_exporter要和Oracle安装在同一个服务器上直接到https://github.com/iamseth/oracledb_exporter/releases下载或者wget https://github.com/prometheus/

2021-12-07 15:09:55 6132 1

空空如也

空空如也

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

TA关注的人

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