自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一篇博客带你学会Lambda(Stream + Optional、后端必知必会)

本文介绍java8中的lambda表达式的用法。包含Stream、Optional、匿名内部类等,同时包含例子让你更容易理解。但本文适合java基础扎实的人,说明性内容较少,主要是帮助大家快速上手。

2024-11-24 09:00:00 729

原创 一篇博客带你学会JUC并发编程(后端必会、五万字笔记)

包含并发编程各种知识,大量代码和样例,同时也有我个人自己的理解。

2024-06-06 00:06:05 1216

原创 一篇博客带你学会Rabbitmq(后端必知必会)

本文介绍Rabbitmq,包含简单案例,多种交换机的使用,以及消息序列化等,一篇博客让你学会Rabbitmq,有多种案例,代码和运行结果。

2024-06-04 15:13:50 1003

原创 一篇博客带你了解JVM(后端必会、七千字精简笔记)

本篇为个人jvm笔记,较为精简,适合已经学习过的人复习,包含场景垃圾回收算法,场景垃圾回收器等知识。

2024-05-08 17:12:03 1340

原创 一篇博客带你学会JavaScript(前后端必会、二万字笔记)

主要包含script 标签、基本语法、DOM 操作、事件传播、定时器等。包含代码和动图,让你直观的了解javascript,一篇就够,一看就懂。

2024-04-11 08:57:33 1055

原创 一篇博客带你学会CSS(前后端必会、三万字笔记)

用一篇博客带你学会CSS,里面包含大量的样例和展示效果,各种动图让你更好的理解。三万字的笔记,让你全方位细致学会。

2024-04-10 15:33:11 1436

原创 一篇博客带你学会HTML(前后端必会、万字笔记)

html的核心就是标签,所以里面包含了大量的样例代码和演示效果,包教包会。

2024-04-09 08:00:00 1362

原创 Redis的前世今生(内存管理、持久化、高可用、集群 详解)一看就懂

redis的诞生和mysql脱不了关系,在redis还未出现时,用户的每次请求都是直接访问mysql,渐渐的人们发现,请求大部分都是读操作,而且很多都是重复的数据,磁盘的i/o是很慢的,所以人们就想,能不能学学cpu建立的缓存机制,mysql也搞一个缓存,就这样一个。在判断一个元素是否存在时,就会用多个相同哈希函数映射,然后判断映射的位置上是否都为1,若都为1说明可能存在,因为可能有其他的一些元素映射会将这些位置正好都置为了1,所以可能会发生很小概率的误判,当然如果不都为1,那么一定是不存在的。

2024-04-06 17:17:33 1175 2

原创 Java:七万字java基础笔记(内含代码和样例)

本文为自己学习java时记录的万字笔记。

2024-03-10 23:48:43 1585

原创 一篇博客带你学会MyBatis-Plus(后端必会)

本文章介绍MyBatis-Plus笔记梳理,基本的使用和拓展。

2024-03-02 17:05:34 1299

原创 一篇博客带你学会MyBatis(后端必会)

本文介绍mybatis如何配置,以及如何使用,sql语句的抒写方法,最后还要缓存的介绍和使用。

2024-02-02 19:22:11 1516

原创 SQL:增、删、改、查 基本语句 Navicat建库(后端必知必会 用法 + 例子)

本文详细介绍数据库sql的增、删、改、查语句,并含义用法与例子,让你更容易使用和理解。

2023-09-28 14:37:53 3513

原创 linux服务器安装redis并进行远程连接

本文详细介绍了Redis的安装配置与远程连接方法:1. 通过wget下载Redis源码包,解压后使用make编译并指定安装路径;2. 修改redis.conf配置文件,设置访问密码、开放IP绑定(0.0.0.0)、关闭保护模式;3. 开放防火墙6379端口并重启Redis服务;4. 演示了使用RESP等工具进行远程连接测试,以及SpringBoot项目通过starter-data-redis依赖连接Redis的配置。全文包含具体命令、配置截图和操作提示,帮助用户完成从安装到远程访问的全流程。

2025-06-22 10:00:00 651

原创 Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String 报错

SpringBoot 3.x需使用MyBatis-Plus新版,依赖项artifactId变更为mybatis-plus-spring-boot3-starter(版本3.5.7),原mybatis-plus-boot-starter不再适用。需特别注意完整修改,仅改版本号会导致错误,这是常见升级陷阱。

2025-06-21 19:07:57 87

原创 优雅的参数校验(@Validated)

SpringBoot项目中使用@Validated注解实现参数校验,需要添加hibernate-validator依赖(spring-boot-starter-web已包含)。主要校验注解包括:空值检查(@NotNull、@NotEmpty等)、数值检查(@Min、@Max等)、字符串检查(@Size、@Pattern等)、布尔/日期检查以及嵌套校验@Valid。Jakarta Bean Validation 3.0新增了@NotBlank、@Positive等注解。通过在字段上添加相应注解即可实现参数自动

2025-06-21 17:19:29 698

原创 Spring-AI-Alibaba快速体验(配置流程和注意事项)

摘要:本文介绍了如何使用Spring-AI-Alibaba框架快速体验AI功能开发。配置要求包括JDK21、SpringBoot3.5.3和Maven3.6.3+,需在阿里云镜像仓库获取依赖。文章详细说明了Maven配置步骤、阿里百炼平台API-key获取方法,并提供了简单的Demo代码示例,通过ChatClient实现智能对话功能。最后提到可用工具自动生成前端界面,完成整体开发流程展示。该教程为开发者提供了一个快速入门Spring-AI集成的实践方案。

2025-06-21 11:53:53 631

原创 Mysql8.0:远程连接注意事项

2025-06-21 10:35:09 96

原创 腾讯云配置了国内镜像依然docker search失败

(不过好像腾讯云镜像只能腾讯云服务器用,可自行找可用镜像源替换)docker search 默认是不走镜像,你即使配了国内镜像也没用。我真服了,我一开始不知道search不走镜像,一直以为配置错了。不过,在pull的时候就可以走我们配置的镜像了。

2025-06-14 18:24:26 479

原创 LeetCode:1382. 将二叉搜索树变平衡(dfs Java)

先中序遍历,然后从mid开始,递归构建左右子树即可。

2025-03-21 16:50:09 303

原创 LeetCode:41. 缺失的第一个正数(原地哈希 Java)

原地hash,因为差的最小的正数最大就是n + 1,可以将对应位置的值交换到对应hash的idx上,注意idx是从0开始,正数是从1开始的。 最后遍历hash,如果对应位置上的值不为对应的idx,那么说明确实这个正数,返回即可。

2025-03-19 17:04:39 311

原创 LeetCode:1186. 删除一次得到子数组最大和(DP Java)

f[i][0] 表示到下标位i的元素为右端点时,删除0个元素的最大值。f[i][1]表示到下标i的元素的为右端点时,删除1个元素的最大值。

2025-03-17 18:06:22 164

原创 LeetCode:706. 设计哈希映射(Java)

不使用任何内建的哈希表库设计一个哈希映射(HashMap)。

2025-03-15 18:14:40 297

原创 LeetCode:146. LRU 缓存

/ 该操作会使得关键字 2 作废,缓存是 {1=1, 3=3}lRUCache.put(4, 4);// 该操作会使得关键字 1 作废,缓存是 {4=4, 3=3}lRUCache.put(2, 2);// 缓存是 {1=1, 2=2}// 返回 -1 (未找到)lRUCache.get(1);// 返回 -1 (未找到)lRUCache.put(1, 1);// 缓存是 {1=1}lRUCache.get(1);请你设计并实现一个满足。的平均时间复杂度运行。

2025-03-13 17:37:29 472

原创 LeetCode:93. 复原 IP 地址(DFS Java)

  比较简单,就是暴力dfs模拟就行。注意校验,比如范围,以及前导零,说明该位置只能为0然后继续递归。

2025-03-13 16:09:57 426

原创 LeetCode:2588. 统计美丽子数组数目(前缀和 Java)

最后都变为0,说明子数组中每个数的二进制的每一位出现1的个数为偶次。所以用异或,同时用hash存储出现的次数。

2025-03-06 16:01:20 354

原创 LeetCode:1328. 破坏回文串(贪心 Java)

n = 1,无论如何换都是回文。遍历字符串一半,如果不为a换成a。如果前半部分全为a,那么根据回文特性,该字符串全为a,只有把最后一个字符修改为小于a的第一个值b即可。

2025-03-05 19:11:20 313

原创 LeetCode:132. 分割回文串 II(DP Java)

创建一个二维布尔数组 d 来记录字符串中任意子串是否为回文串。通过双重循环初始化 d 数组,先将所有元素初始化为 true,再通过动态规划的方式更新 d 数组,判断 s[i...j] 是否为回文串。

2025-03-02 22:39:07 328

原创 LeetCode:131. 分割回文串(DP Java)

f[i][j]含义是:下标 i 到 j 字符串是否为回文。单个字母也为回文,所以初始化true。判断如果char[i] == char[j] 并且 f[i + 1][j - 1]为true,说明f [ i ] [ j ] 为回文。然后dfs遍历即可。同时用 f 剪枝。

2025-03-01 15:21:58 413

原创 LeetCode:863. 二叉树中所有距离为 K 的结点(DFSJava)

由于二叉树只有单向指向孩子的指针,所以先dfs遍历,记录一下每个节点的父节点,然后再dfs即可。注意遍历的时候不要重复遍历节点。

2025-02-26 10:51:46 339

原创 LeetCode:2502. 设计内存分配器(模拟 Java)

模拟题,遍历就行。

2025-02-25 10:42:32 820

原创 LeetCode:624. 数组列表中的最大距离(贪心Java)

暴力即可,每次取最大和最小,注意先根据当前列表中的最大值b和最小值a与ma,mi取一次res比较,而不是更新ma和mi。因为需要取不取数组中的最大和最小为答案。

2025-02-19 01:09:05 219

原创 LeetCode:2080. 区间内查询数字的频率(二分 Java)

先hash把所有相同数字的下标存到list中。然后二分找到左右端点。

2025-02-18 20:35:57 440

原创 LeetCode:1552. 两球之间的磁力(二分 java)

  二分,具有单调性,最大的最小磁力,使得能够放入的球的数量不小于 m个。

2025-02-14 22:05:32 252

原创 LeetCode:80. 删除有序数组中的重复项 II(模拟 Java)

函数应返回新长度 length = 7, 并且原数组的前七个元素被修改为 0, 0, 1, 1, 2, 3, 3。不需要考虑数组中超出新长度后面的元素。简单题,模拟一下即可,超过两相同的不移动。方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。删除重复出现的元素,使得出现次数超过两次的元素。// 根据你的函数返回的长度, 它会打印出数组中。// 在函数里修改输入数组对于调用者是可见的。为什么返回数值是整数,但输出的答案是数组呢?不需要考虑数组中超出新长度后面的元素。,返回删除后数组的新长度。

2025-02-09 17:45:43 306

原创 LeetCode:63. 不同路径 II(DP Java)

简答题,dp,每格只能从上和左过来,所以直接遍历,f[i][j]表示到达i,j格子的路径个数。

2025-02-08 11:15:12 452

原创 LeetCode:59. 螺旋矩阵 II(模拟 Java)

模拟,如果下一个位置超过矩阵,转换方向即可。注意res[l][r] != 0这个判断即可,因为环绕从外向内,遇到已经填充过的数,那么就开始填充内圈即可。

2025-02-07 11:29:25 257

原创 LeetCode:47. 全排列 II(dfs Java)

dfs回溯求解,hash记录是否使用过该数字,如果已经用过跳过。重点是这个nums[i] == nums[i - 1] && !hash[i - 1],因为需要去掉重复的,因为里面有重复的数字,所以每个位置可能重复,先排序,然后判断,如果和上一个数相同,并且上一个数没有使用过的话就跳过。

2025-02-06 11:06:11 213

原创 LeetCode:40. 组合总和 II(回溯 + 剪枝 Java)

比较简单啊,看代码吧。回溯题。

2025-01-26 14:20:31 762

原创 LeetCode:2412. 完成所有交易的初始最少钱数(贪心 java)

考虑最坏情况即可,就是在所有亏损进行的情况下,买一个花费最贵的。

2025-01-25 13:43:35 423

原创 LeetCode:2944. 购买水果需要的最少金币数(DP Java)

f [ i ] 表示选择第 i 个之前的都被购买所需的最小价值。因为题目是从1开始算的,所以这里i不是表示下标,而是表示第几个。

2025-01-24 15:42:05 283

空空如也

空空如也

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

TA关注的人

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