- 博客(221)
- 收藏
- 关注

原创 智慧在线判题OJ系统项目总体,包含功能开发思路,内部中间件,已经部分知识点
由三部分组成:头部,载荷,签名头部(header):包含令牌类型和使用方法载荷(payload):包含用户信息和其他元数据(使用base编码)签名(signatiure):用于检验令牌的完整性和真实性签名算法{base64(header+base64编码(payload)客户端使用用户名跟密码请求登录服务端收到请求,去验证用户名和密码验证成功后,服务端签发一个Token,再把这个Token发送客户端(token上述的jwt串)客户端收到Token,会把他存储起来。
2025-05-22 20:11:01
1475
2

原创 秋招面试基础总结,Java八股文基础(串联知识),五万字大全
值传递和引用传递静态变量和静态代码块的执行顺序Java集合的框架,Set,HashSet,LinkedHashSet这三个底层是什么多线程篇Java实现多线程的方式假设一个线程池,核心线程数是2,最大线程数是3,阻塞队列是4,10个并发,介绍一下处理过程10个并发处理结束后,线程池从3变成2的机制(总结就是核心线程,阻塞队列,救急线程,拒绝策略,假如核心线程为0)sleep,wait,join,yield的区别以及作用说说你对线程安全的理解Threa
2024-11-23 19:15:22
1340
4
原创 力扣.870优势洗牌解决方法: 下标排序编辑力扣.942增减字符串匹配最长回文子序列牛客.背包问题(最大体积)力扣.45跳跃游戏II 另一种思考
力扣.870优势洗牌解决方法: 下标排序编辑力扣.942增减字符串匹配最长回文子序列牛客.背包问题(最大体积)力扣.45跳跃游戏II 另一种思考
2025-08-12 14:39:18
256
1
原创 牛客.城市群数量(BFS/DFS两个解法)dfs牛客.最大子矩阵牛客.小葱的01串
牛客.城市群数量(BFS/DFS两个解法)dfs牛客.最大子矩阵牛客.小葱的01串
2025-08-12 14:36:57
138
原创 牛客.空调遥控二分查找牛客.kotori和气球(数学问题)力扣.二叉树的最大路径和牛客.主持人调度(二)
牛客.空调遥控二分查找牛客.kotori和气球(数学问题)力扣.二叉树的最大路径和牛客.主持人调度(二)
2025-08-11 15:27:58
198
原创 牛客.体操队形(dfs,暴力搜索)牛客.最长上升子序列II(贪心+二分)牛客.最长公共子序列牛客.春游
牛客.体操队形(dfs,暴力搜索)牛客.最长上升子序列II(贪心+二分)牛客.最长公共子序列牛客.春游
2025-08-11 15:25:30
348
原创 力扣.26删除有序数组中的重复项力扣121.买卖人股票的最佳时机力扣.1143最长公共子序列力扣72.编辑距离力扣12.整数转罗马数字
力扣.26删除有序数组中的重复项力扣121.买卖人股票的最佳时机力扣.1143最长公共子序列力扣72.编辑距离力扣12.整数转罗马数字
2025-07-24 17:33:28
301
2
原创 力扣300.最长递增子序列(动态规划,下面是贪心) 贪心解法牛客.重排字符串力扣.172阶乘后的0牛客.组队竞赛
力扣300.最长递增子序列(动态规划,下面是贪心) 贪心解法牛客.重排字符串力扣.172阶乘后的0牛客.组队竞赛
2025-07-24 17:31:41
914
原创 【无标题】
学学这道题,他是开始先去找更新条件 (正常双指针步骤(我给忘了),假如区间不连续,那么就不匹配,但是必然涉及一个越界的问题,这个人就十分巧妙的规避了这个问题,添加了一个条件,这样到达这个条件,自动就结束,去添加进去,(然后right不管什么条件,他都是需要往后走的,所以这个也没变化),刚开始的时候思路是先找right往后走的条件,在找比如匹配,不匹配,区间只有一个数字,这些种情况,你很容易就是想的碎片话,就是不好想。比如 1, 2,3,4 这种情况right应该++
2025-07-17 16:28:54
250
2
原创 力扣.1312让字符串成为回文串的最少插入次数力扣.105从前序和中序遍历构造二叉树牛客.拼三角力扣.57插入区间编辑
他应该先把不符合条件的排除,比如我插入的区间,跟你一点关系都没有的我需要给他排出了,然后去找重叠的部分,重叠的部分,就是重叠这段区间里面的最小值和最大值,把这俩抽出来就好,但是我们什么时候,插入这个区间呢,是不是应该,当我们第一次当前区间超过插入的区间的时候,插入区间内的值(但是此时是否涉及一个,假如没有比插入的区间大的情况,所以后面我们给他做了一个特殊处理,给他最后判断了一下,假如部署true,就去插入一下。仅仅需要枚举0,1,2 3,4,5 0,2, 3, 1, 4, 5。
2025-07-17 16:27:15
878
原创 ES的开始
ES是基于java语言并且基于Lucene编写的搜索引擎框架,提供了分布式全文搜索的功能Lucene本身是一个搜索引擎能力全文检索:能拼装成一个词的,则拼装,不能拼装那么就单个8666手机壳8666手机壳根据关键词去分词库搜索,找到匹配的内容(倒排索引)数据假如是死数据Solr更好,假如数据实时改变,则使用Solr查询速度Solr搭建集群,需要依赖Zookeeper来帮助管理,ES本身支持集群搭建,不需要第三方介入ES对云计算和大数据支持的特别好。
2025-06-03 12:53:02
1006
原创 力扣热题100,力扣.437路径之和III力扣226.翻转二叉树力扣108.将有序数组改造成二叉搜索树力扣.199二叉树的右视图力扣.114二叉树展开为链表力扣236.二叉树的最近
力扣.437路径之和III力扣226.翻转二叉树力扣108.将有序数组改造成二叉搜索树力扣.199二叉树的右视图力扣.114二叉树展开为链表力扣236.二叉树的最近公共祖先
2025-06-03 12:52:38
266
原创 力扣四道题,力扣LCR 016无重复字符的最长子串力扣452.用最小数量的箭引爆气球LCR026.重排链表力扣.1765地图中的最高点
力扣LCR 016无重复字符的最长子串力扣452.用最小数量的箭引爆气球LCR026.重排链表力扣.1765地图中的最高点
2025-05-27 21:49:50
505
2
原创 项目启动以及Vue初识
目录C/S架构优点缺点B/S架构优点缺点如何选择C/S架构B/S架构单体架构集群架构分布式架构微服务VUE初识选项式API组合式API响应式数据Vue Router编辑路由服务端路由单页面应用客户端路由编辑RouterLink组件RouterView组件B端C端 微服务划分目标技术方面划分技术选型:组合式API响应式数据Vue Router路由服务端路由单页面应用客户端路由RouterLink组件RouterView组件
2025-05-27 21:48:28
1046
原创 力扣.H指数力扣.字母异位词力扣.289生命游戏力扣452.用最小数量的箭引爆气球力扣.86分隔链表力扣.轮转数组
力扣.H指数力扣.字母异位词力扣.289生命游戏力扣452.用最小数量的箭引爆气球力扣.86分隔链表力扣.轮转数组
2025-05-22 20:10:19
650
原创 力扣小题, 力扣113.路径总和II力扣.111二叉树的最小深度 力扣.221最大正方形力扣5.最长回文子串更加优秀的算法:中心扩展算法
力扣113.路径总和II力扣.111二叉树的最小深度 力扣.221最大正方形力扣5.最长回文子串更加优秀的算法:中心扩展算法
2025-05-22 20:09:04
546
2
原创 力扣热题100, 力扣.167两数之和II 力扣80.删除有序数组中的重复项力扣99.恢复二叉搜索树力扣.110平衡二叉树
力扣热题100, 力扣.167两数之和II 力扣80.删除有序数组中的重复项力扣99.恢复二叉搜索树力扣.110平衡二叉树
2025-05-21 11:28:24
720
2
原创 力扣热题100,力扣148.排序链表力扣.26找出字符串中第一个匹配项的下标力扣146.LRU缓存序列管理器
力扣148.排序链表力扣.26找出字符串中第一个匹配项的下标力扣146.LRU缓存序列管理器
2025-05-21 11:26:01
1193
原创 JS复习,近期,JS的输出JS结束方式变量声明部分数据类型数据类型特点运算符输入输出函数定义方式闭包:函数内部声明另外的函数对象的创造Number对象的创建
函数定义方式1:study()调用函数函数定义方式2:console.log('学习了')study()函数中,有参数的函数,你多传递参数没问题,依次给,假如少传,那么没赋值那个就是未定义。} add(1)ear(){console.log('吃饭了');BOM主要用于管理窗口与窗口之间的通讯,因此核心对象是window,包含history(历史,前进后退),location(位置)
2025-05-20 09:45:56
989
原创 力扣310.最小高度树(拓扑排序,无向图),力扣.加油站力扣.矩阵置零力扣.二叉树中的最大路径和
力扣310.最小高度树(拓扑排序,无向图),力扣.加油站力扣.矩阵置零力扣.二叉树中的最大路径和
2025-05-15 20:07:10
554
原创 力扣.1471数组的k个最强值,力扣.1471数组的k个最强值力扣1576.替换所有的问号力扣1419.数青蛙编辑力扣300.最长递增子序列
力扣.1471数组的k个最强值力扣1576.替换所有的问号力扣1419.数青蛙编辑力扣300.最长递增子序列
2025-05-15 20:06:03
467
原创 力扣智慧思想小题,目录力扣.跳跃游戏(思想很重要)力扣.跳跃游戏II(还是思想)力扣.分发糖果力扣151.反转字符串中的单词力扣.轮转数组
目录力扣.跳跃游戏(思想很重要)力扣.跳跃游戏II(还是思想)力扣.分发糖果力扣151.反转字符串中的单词力扣.轮转数组
2025-05-08 13:15:04
534
2
原创 力扣,力扣.54螺旋矩阵(模拟,这道题,开始没思路,但是点一下就会)力扣56.合并区间力扣48.旋转图像力扣240.搜索二维矩阵II
力扣.54螺旋矩阵(模拟,这道题,开始没思路,但是点一下就会)力扣56.合并区间力扣48.旋转图像力扣240.搜索二维矩阵II
2025-05-07 18:17:17
316
原创 力扣热题100,力扣31.下一个排列编辑力扣287.寻找重复数力扣239.滑动窗口最大值力扣54.螺旋矩阵
力扣31.下一个排列编辑力扣287.寻找重复数力扣239.滑动窗口最大值力扣54.螺旋矩阵
2025-05-06 13:03:36
362
2
原创 力扣热题100,力扣49.字母异位词分组力扣128.最长连续序列力扣.盛水最多的容器力扣42.接雨水(单调栈)
力扣49.字母异位词分组力扣128.最长连续序列力扣.盛水最多的容器力扣42.接雨水(单调栈)
2025-05-06 13:03:20
1134
原创 SpringCloud全套速通入门,目录认识微服务开发环境的安装拆分微服务应遵循以下原则服务注册和服务发现(Eureka)组件2:LoadBalance负载均衡在Ubuntu系
目录认识微服务开发环境的安装拆分微服务应遵循以下原则服务注册和服务发现(Eureka)组件2:LoadBalance负载均衡在Ubuntu系统下安装了多个jdk,如何处理选择我们需要的jdk
2025-04-21 10:19:49
994
2
原创 栈和字符串,力扣.43.字符串相乘力扣1047.删除字符串中的所有相邻重复项力扣.844比较含退格的字符串力扣227.基本计算器II
力扣.43.字符串相乘力扣1047.删除字符串中的所有相邻重复项力扣.844比较含退格的字符串力扣227.基本计算器II
2025-04-21 10:18:26
328
原创 M1/M2使用xxl-job报错2025-04-07T13:27:55.498+08:00 ERROR 25955 --- [rCallbackThread] c.xxl.job.core.log.X
M1/M2使用xxl-job报错2025-04-07T13:27:55.498+08:00 ERROR 25955 --- [rCallbackThread] c.xxl.job.core.log.X
2025-04-09 08:32:24
343
2
原创 合并k个升序链表,哈希表回顾,力扣LCR.078合并k个升序链表编辑 哈希表力扣.1.两数之和面试题01.02.判定是否互为字符串重排力扣.217.存在重复元素力扣.33.字母
力扣LCR.078合并k个升序链表编辑哈希表力扣.1.两数之和面试题01.02.判定是否互为字符串重排力扣.217.存在重复元素力扣.33.字母异位词分组
2025-04-07 09:04:43
582
1
原创 M1使用docker制作镜像xxl-job,供自己使用
查看当前架构,他应该内部有自己版本的jdk,所以我们不需要改,假如没有就应该肯定要改了(当然你们又可能并不是这个版本,所以方便你们指定,我也 写上)里面我是一点没改docker build -t opsxlab/xxl-job-admin:3.0.1 . 直接build创建镜像。很苦逼一个情况,m1的docker假如不翻墙,我们找不到xxl-job,所以我们要自己制作。这里,假如你们找不到版本,所以自己去创建一下吧,就。拉去成功后,进入这个xxl-job目录。首先先去下载xxl-job源码。
2025-04-07 09:04:14
375
原创 链表常用技巧和操作,目录力扣.2.两数相加编辑力扣.24.两两交换链表中的节点(恶心,但是非常要注意的一点)力扣.143.重排链表
链表常用技巧和操作,目录力扣.2.两数相加编辑力扣.24.两两交换链表中的节点(恶心,但是非常要注意的一点)力扣.143.重排链表
2025-04-01 10:06:44
448
1
原创 dfs(基于BFS的dfs)力扣37.解数独力扣79.单词搜索力扣1219.黄金矿工力扣980.不同路径III
力扣37.解数独力扣79.单词搜索力扣1219.黄金矿工力扣980.不同路径III
2025-04-01 10:06:15
223
原创 Java基础复习
抽象方法的关键字具有抽象方法的类叫做抽象类,关键字abstract抽象类和抽象方法的注意事项:1.抽象类中没有抽象方法,但是无意义2.抽象类具有普通类中的所有成分3.子类继承抽象父类,或者重写抽象方法,或者将子类定义为抽象类4.抽象无法实例化对象,只能被子类继承使用那么抽象类中是否可以有构造方法-可以(在子类中,子类去调用父类的构造方法)接口和抽象类的区别1常规的extends和interface,这两个不一样就不用说了。
2025-03-28 08:54:21
752
2
原创 队列+宽度优先搜索,力扣.662.二叉树最大高度 力扣515.在每个数行中找最大值力扣703.数据流中第k大元素力扣692.前k个高频词
力扣.662.二叉树最大高度 力扣515.在每个数行中找最大值力扣703.数据流中第k大元素力扣692.前k个高频词
2025-03-14 08:56:24
990
2
原创 MAC本机安装docker,卡了整整四天,渴望下载mysql5.7的经历
MAC本机安装docker,卡了整整四天,渴望下载mysql5.7的经历
2024-12-22 11:24:35
644
3
原创 力扣.5.最长回文子串力扣.14最长公共前缀力扣219.存在重复元素II力扣.67二进制求和
力扣.5.最长回文子串力扣.14最长公共前缀力扣219.存在重复元素II力扣.67二进制求和
2024-11-23 19:13:44
456
原创 栈的应用,力扣394.字符串解码力扣946.验证栈序列力扣429.N叉树的层序遍历力扣103.二叉树的锯齿形层序遍历
当你将 `ret2` 添加到 `ret` 中时,实际上是将 `ret2` 的引用添加到了 `ret` 列表中。遇到']':解析,然后放到字符串栈,栈顶的字符串后面,(因为,我们获取的是左括号里面的字符串,和数字,也就是我们知道是几个左括号里面的值,然后我们和前一个进行简单的拼接即可。这里我遇到一个问题,就是我的ret不断添加的过程中,发现把ret2添加进去之后,ret2被我改变,但是ret也改变,我问了半天,没结果,然后我去问gpt得到了这个原因。遇到'[':把后面的字符串提取出来,放入字符串栈中。
2024-11-23 19:13:12
515
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人