- 博客(1024)
- 收藏
- 关注
原创 钉钉监控Hippo4j线程池通知报警
钉钉监控Hippo4j线程池通知报警,现阶段已集成钉钉、企业微信、飞书的消息推送,后续会持续接入邮箱、短信和自定义通知渠道。
2023-07-16 07:00:00
1334
22
原创 【直到用了Tabby这款开源好用的终端工具,直接和Xshell、Putty、FinalShell告别】
Tabby是一款可无限定制的跨平台终端应用程序,适用于本地shell、串行、SSH和Telnet直到用了Tabby这款开源好用的终端工具,直接和Xshell、Putty、FinalShell远程终端工具告别,现目前的远程终端工具有很多,XShell 收费而且感觉用起来也一般,Putty 免费很不方便,FinalShell 功能也一般。所以,找到一款好用、功能齐全,并且漂亮美观的终端工具可谓是十分困难。直到发现了Tabby这款开源的终端工具,直接和Xshell、Putty、FinalShell远程终端工具告别
2023-07-12 16:24:06
2264
21
原创 【LeetCode: 167. 两数之和 II - 输入有序数组 | 双指针专题 】
LeetCode: 167. 两数之和 II - 输入有序数组 ,双指针专题。给你一个下标从 1 开始的整数数组 numbers ,该数组已按 非递减顺序排列 ,请你从数组中找出满足相加之和等于目标数 target 的两个数。如果设这两个数分别是numbers[index1] 和 numbers[index2] ,则 1
2023-07-08 09:01:49
493
53
原创 【LeetCode: 1301. 最大得分的路径数目 + DP】
给你一个正方形字符数组 board ,你从数组最右下方的字符 ‘S’ 出发。你的目标是到达数组最左上角的字符 ‘E’ ,数组剩余的部分为数字字符 1, 2, …, 9 或者障碍 ‘X’。在每一步移动中,你可以向上、向左或者左上方移动,可以移动的前提是到达的格子没有障碍。一条路径的 「得分」 定义为:路径上所有数字的和。请你返回一个列表,包含两个整数:第一个整数是 「得分」 的最大值,第二个整数是得到最大得分的方案数,请把结果对 10^9 + 7 取余。如果没有任何路径可以到达终点,请返回 [
2026-07-05 10:31:48
272
原创 【LeetCode: 2492. 两个城市间路径的最小分数 + DFS】
这篇文章探讨了如何高效求解两个城市间路径的最小分数问题。主要思路是通过构建邻接表表示无向图,使用迭代DFS遍历连通块,并实时更新最小边权值。该方法避免了递归栈溢出风险,时间复杂度为O(n+m),空间复杂度为O(n+m)。文章还强调了题目隐藏结论:由于路径可重复经过边,最小分数实际等于连通块内的最小边权值。最后分享了作者的座右铭,传递坚持与努力的价值观念。
2026-07-04 16:59:15
266
原创 【LeetCode: 3286. 穿越网格图的安全路径 + BFS】
这篇文章介绍了一个关于在网格图中寻找安全路径的算法题目。题目要求在给定的二进制矩阵中,从左上角移动到右下角,经过不安全格子会扣除生命值,必须确保移动过程中生命值始终为正数。文章详细分析了题目要求、边界限制,并提出了基于BFS的解决方案,包括状态记录数组设计、队列存储搜索状态、邻居合法性校验与入队规则等关键步骤。通过剪枝优化和动态更新剩余血量,确保算法高效性。BFS相比DFS更适合解决此类问题,避免栈溢出且能快速找到路径。代码实现展示了具体逻辑,最终通过遍历所有可能路径判断是否存在可行解。
2026-07-02 20:11:32
263
原创 【LeetCode: 2812. 找出最安全路径 + 二分答案 + 多源 BFS】
文章摘要 该题目要求在给定的二维网格中,寻找从左上角到右下角的路径,使得路径上所有格子到最近小偷的最小曼哈顿距离(安全系数)最大。解法采用多源BFS预处理每个格子的最近小偷距离,然后通过二分答案结合BFS验证是否存在满足条件的路径。具体步骤包括:1) 多源BFS计算距离矩阵;2) 二分搜索确定最大安全系数,每次验证路径连通性。该方法高效避免了暴力搜索,适用于大规模网格。最终返回满足条件的最大安全系数。
2026-07-01 20:45:27
302
原创 【LeetCode: 1358. 包含所有三种字符的子字符串数目 + 滑动窗口】
文章摘要 题目要求统计字符串中同时包含a、b、c三种字符的子串数量。通过滑动窗口算法高效解决: 核心思路:维护窗口[left,right],确保窗口内始终不满足三种字符同时存在。每当右指针扩展时,若窗口满足条件,则收缩左边界并累计有效子串数(cnt += left)。 实现步骤: 右指针遍历字符串,更新字符计数 当窗口满足条件时,移动左指针并减少计数 左指针位置即为以当前右指针结尾的有效子串数 复杂度:时间复杂度O(n),空间复杂度O(1)。该方法可扩展至k种字符的情况。
2026-06-30 11:02:32
491
原创 【LeetCode: 2210. 统计数组中峰和谷的数量 + 模拟】
摘要 本文介绍了如何统计数组中峰和谷的数量。峰是指某元素比左右相邻不相等元素都大,谷则相反。通过模拟法,跳过重复元素,找到每个元素的左右边界,判断其是否为峰或谷。代码实现中,遍历数组时处理重复元素,并检查当前元素是否满足峰或谷的条件。最终返回峰和谷的总数。该方法高效且直观,适用于给定约束条件。 关键词:算法、数组、峰和谷、模拟、重复元素处理
2025-07-27 19:58:35
1056
原创 【牛客: SQL202 查找当前薪水详情以及部门编号dept_no + 联表查询】
【牛客: SQL202 查找当前薪水详情以及部门编号dept_no + 联表查询】请你查找各个部门当前领导的薪水详情以及其对应部门编号dept_no,输出结果以salaries.emp_no升序排序,并且请注意输出结果里面dept_no列是最后一列,以上例子输出如下:
2025-03-06 17:19:10
1076
原创 【牛客: SQL专题 : SQL98 确定哪些订单购买了 prod_id 为 BR01 的产品(二) + 联表查询】
【LeetCode: SQL专题 : SQL98 确定哪些订单购买了 prod_id 为 BR01 的产品(二) + 联表查询】编写 SQL 语句,使用子查询来确定哪些订单(在 OrderItems 中)购买了 prod_id 为 "BR01" 的产品,然后从 Orders 表中返回每个产品对应的顾客 ID(cust_id)和订单日期(order_date),按订购日期对结果进行升序排序。提示:这一次使用联结和简单的等联结语法。
2025-03-03 15:00:14
961
原创 【LeetCode:132. 分割回文串 II + 动态规划】
【LeetCode:132. 分割回文串 II + 动态规划】给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是回文串。返回符合要求的 最少分割次数 。
2025-03-02 14:34:36
852
原创 【LeetCode: SQL专题 : SQL97 返回顾客名称和相关订单号以及每个订单的总和 + 联表查询】
【LeetCode: SQL专题 : SQL97 返回顾客名称和相关订单号以及每个订单的总和 + 联表查询】返回顾客名称和订单号,返回 Customers 表中的顾客名称(cust_name)和Orders 表中的相关订单号(order_num),添加第三列 OrderTotal,其中包含每个订单的总价,并按顾客名称再按订单号对结果进行升序排序。
2025-02-28 11:51:04
807
原创 【LeetCode: SQL专题 : SQL132 每个题目和每份试卷被作答的人数和次数 + 合并查询】
【LeetCode: SQL专题 : SQL132 每个题目和每份试卷被作答的人数和次数 + 合并查询】现有试卷作答记录表exam_record(uid用户ID, exam_id试卷ID, start_time开始作答时间, submit_time交卷时间, score得分):题目练习表practice_record(uid用户ID, question_id题目ID, submit_time提交时间, score得分):
2025-02-27 11:44:47
1251
原创 【LeetCode: 面试变体: 236. 二叉树的最近公共祖先 + 数组 + 递归】
【LeetCode: 面试变体: 236. 二叉树的最近公共祖先 + 数组 + 递归】给定一个数组来表示二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”
2025-02-26 10:55:17
1094
原创 【LeetCode: 236. 二叉树的最近公共祖先 + 二叉树 + 递归】
【LeetCode: 236. 二叉树的最近公共祖先 + 二叉树 + 递归】给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”
2025-02-25 09:58:09
770
原创 【LeetCode: SQL专题 : SQL131 作答试卷得分大于过80的人的用户等级分布 + 联表查询】
【LeetCode: SQL专题 : SQL131 作答试卷得分大于过80的人的用户等级分布 + 联表查询】现有用户信息表user_info(uid用户ID,nick_name昵称, achievement成就值, level等级, job职业方向, register_time注册时间):
2025-02-23 11:25:38
1145
原创 【LeetCode: 2506. 统计相似字符串对的数目 + 模拟 + 哈希表】
【LeetCode: 2506. 统计相似字符串对的数目 + 模拟 + 哈希表】给你一个下标从 0 开始的字符串数组 words 。如果两个字符串由相同的字符组成,则认为这两个字符串 相似 。- 例如,"abca" 和 "cba" 相似,因为它们都由字符 'a'、'b'、'c' 组成。- 然而,"abacba" 和 "bcfd" 不相似,因为它们不是相同字符组成的。请你找出满足字符串 words[i] 和 words[j] 相似的下标对 (i, j) ,并返回下标对的数目,其中 0 <= i
2025-02-22 22:29:46
942
原创 【LeetCode: 2595. 奇偶位数 + 位运算】
【LeetCode: 2595. 奇偶位数 + 位运算】给你一个 正 整数 n 。用 even 表示在 n 的二进制形式(下标从 0 开始)中值为 1 的偶数下标的个数。用 odd 表示在 n 的二进制形式(下标从 0 开始)中值为 1 的奇数下标的个数。请注意,在数字的二进制表示中,位下标的顺序 从右到左。返回整数数组 answer ,其中 answer = [even, odd] 。
2025-02-20 09:59:30
993
原创 【LeetCode: 624. 数组列表中的最大距离 + 维护最大值最小值】
【LeetCode: 624. 数组列表中的最大距离 + 维护最大值最小值】给定 m 个数组,每个数组都已经按照升序排好序了。现在你需要从两个不同的数组中选择两个整数(每个数组选一个)并且计算它们的距离。两个整数 a 和 b 之间的距离定义为它们差的绝对值 |a-b| 。返回最大距离。
2025-02-19 10:27:13
497
原创 【LeetCode: LCR 126. 斐波那契数 + 动态规划】
【LeetCode: LCR 126. 斐波那契数 + 动态规划】斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0,F(1) = 1F(n) = F(n - 1) + F(n - 2),其中 n > 1给定 n ,请计算 F(n) 。
2025-02-18 15:33:54
1076
原创 【LeetCode: 189. 轮转数组 + 原地反转】
【LeetCode: 189. 轮转数组 + 原地反转】给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。
2025-02-16 09:00:00
1674
原创 【LeetCode: 611. 有效三角形的个数 + 排序 + 双指针】
【LeetCode: 611. 有效三角形的个数 + 排序 + 双指针】给定一个包含非负整数的数组 nums ,返回其中可以组成三角形三条边的三元组个数。
2025-02-15 10:14:20
760
原创 【LeetCode: 1552. 两球之间的磁力 + 二分】
【LeetCode: 1552. 两球之间的磁力 + 二分】在代号为 C-137 的地球上,Rick 发现如果他将两个球放在他新发明的篮子里,它们之间会形成特殊形式的磁力。Rick 有 n 个空的篮子,第 i 个篮子的位置在 position[i] ,Morty 想把 m 个球放到这些篮子里,使得任意两球间 最小磁力 最大。已知两个球如果分别位于 x 和 y ,那么它们之间的磁力为 |x - y| 。给你一个整数数组 position 和一个整数 m ,请你返回最大化的最小磁力。
2025-02-14 10:35:39
799
原创 【LeetCode: 442. 数组中重复的数据 + 索引映射】
【LeetCode: 442. 数组中重复的数据 + 索引映射】给你一个长度为 n 的整数数组 nums ,其中 nums 的所有整数都在范围 [1, n] 内,且每个整数出现 最多两次 。请你找出所有出现 两次 的整数,并以数组形式返回。你必须设计并实现一个时间复杂度为 O(n) 且仅使用常量额外空间(不包括存储输出所需的空间)的算法解决此问题。
2025-02-13 17:33:21
752
原创 【LeetCode: 1760. 袋子里最少数目的球 + 二分】
【LeetCode: 1760. 袋子里最少数目的球 + 二分】给你一个整数数组 nums ,其中 nums[i] 表示第 i 个袋子里球的数目。同时给你一个整数 maxOperations 。你可以进行如下操作至多 maxOperations 次:
2025-02-12 17:12:35
1266
原创 【LeetCode: 8. 字符串转换整数 (atoi) + 模拟】
【LeetCode: 8. 字符串转换整数 (atoi) + 模拟】请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数。函数 myAtoi(string s) 的算法如下:- 空格:读入字符串并丢弃无用的前导空格(" ")- 符号:检查下一个字符(假设还未到字符末尾)为 '-' 还是 '+'。如果两者都不存在,则假定结果为正。- 转换:通过跳过前置零来读取该整数,直到遇到非数字字符或到达字符串的结尾。如果没有读取数字,则结果为0。- 舍入:如果
2025-02-11 23:50:24
1477
原创 【LeetCode: 378. 有序矩阵中第 K 小的元素 + 二分】
【LeetCode: 378. 有序矩阵中第 K 小的元素 + 二分】给你一个 n x n 矩阵 matrix ,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。请注意,它是 排序后 的第 k 小元素,而不是第 k 个 不同 的元素。你必须找到一个内存复杂度优于 O(n2) 的解决方案。
2025-02-10 10:58:41
1451
原创 【LeetCode: 365. 水壶问题 + 数学】
【LeetCode: 365. 水壶问题 + 数学】有两个水壶,容量分别为 x 和 y 升。水的供应是无限的。确定是否有可能使用这两个壶准确得到 target 升。
2025-02-09 18:56:14
927
原创 【LeetCode: 525. 连续数组 + 前缀和 + 哈希表】
【LeetCode: 525. 连续数组 + 前缀和 + 哈希表】给定一个二进制数组 nums , 找到含有相同数量的 0 和 1 的最长连续子数组,并返回该子数组的长度。
2025-02-08 11:04:52
455
原创 【LeetCode: 556. 下一个更大元素 III + 思维】
【LeetCode: 556. 下一个更大元素 III + 思维】给你一个正整数 n ,请你找出符合条件的最小整数,其由重新排列 n 中存在的每位数字组成,并且其值大于 n 。如果不存在这样的正整数,则返回 -1 。注意 ,返回的整数应当是一个 32 位整数 ,如果存在满足题意的答案,但不是 32 位整数 ,同样返回 -1 。
2025-02-07 18:57:06
1037
原创 【LeetCode: 887. 鸡蛋掉落 + 递归 + 二分 + dp】
【LeetCode: 887. 鸡蛋掉落 + 递归 + 二分 + dp】给你 k 枚相同的鸡蛋,并可以使用一栋从第 1 层到第 n 层共有 n 层楼的建筑。已知存在楼层 f ,满足 0 <= f <= n ,任何从 高于 f 的楼层落下的鸡蛋都会碎,从 f 楼层或比它低的楼层落下的鸡蛋都不会破。每次操作,你可以取一枚没有碎的鸡蛋并把它从任一楼层 x 扔下(满足 1 <= x <= n)。如果鸡蛋碎了,你就不能再次使用它。如果某枚鸡蛋扔下后没有摔碎,则可以在之后的操作中 重复使用 这枚鸡蛋。请你计
2025-02-06 11:12:09
758
原创 【LeetCode: 1004. 最大连续1的个数 III + 滑动窗口】
【LeetCode: 1004. 最大连续1的个数 III + 滑动窗口】给定一个二进制数组 nums 和一个整数 k,假设最多可以翻转 k 个 0 ,则返回执行操作后 数组中连续 1 的最大个数 。
2025-02-05 11:48:25
1079
原创 【LeetCode: 922. 按奇偶排序数组 II + 双指针】
【LeetCode: 922. 按奇偶排序数组 II + 双指针】给定一个非负整数数组 nums, nums 中一半整数是 奇数 ,一半整数是 偶数 。对数组进行排序,以便当 nums[i] 为奇数时,i 也是 奇数 ;当 nums[i] 为偶数时, i 也是 偶数 。你可以返回 任何满足上述条件的数组作为答案 。
2025-02-04 11:32:43
522
原创 【LeetCode: 445. 两数相加 II + 链表】
【LeetCode: 445. 两数相加 II + 链表】给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。
2025-02-03 21:40:03
1069
原创 【LeetCode: 598. 区间加法 II + 脑筋急转弯】
【LeetCode: 598. 区间加法 II + 脑筋急转弯】给你一个 m x n 的矩阵 M 和一个操作数组 op 。矩阵初始化时所有的单元格都为 0 。ops[i] = [ai, bi] 意味着当所有的 0 <= x < ai 和 0 <= y < bi 时, M[x][y] 应该加 1。在 执行完所有操作后 ,计算并返回 矩阵中最大整数的个数 。
2025-02-02 00:14:43
1020
原创 【LeetCode: 81. 搜索旋转排序数组 II + 二分查找】
【LeetCode: 81. 搜索旋转排序数组 II + 二分查找】已知存在一个按非降序排列的整数数组 nums ,数组中的值不必互不相同。给你 旋转后 的数组 nums 和一个整数 target ,请你编写一个函数来判断给定的目标值是否存在于数组中。如果 nums 中存在这个目标值 target ,则返回 true ,否则返回 false 。
2025-02-01 13:16:40
1365
原创 【LeetCode: 541. 反转字符串 II + 模拟】
【LeetCode: 541. 反转字符串 II + 模拟】给定一个字符串 s 和一个整数 k,从字符串开头算起,每计数至 2k 个字符,就反转这 2k 字符中的前 k 个字符。- 如果剩余字符少于 k 个,则将剩余字符全部反转。- 如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。
2025-01-31 22:25:45
853
原创 【LeetCode: 958. 二叉树的完全性检验 + bfs + 二叉树】
【LeetCode: 958. 二叉树的完全性检验 + bfs + 二叉树】给你一棵二叉树的根节点 root ,请你判断这棵树是否是一棵 完全二叉树 。在一棵 完全二叉树 中,除了最后一层外,所有层都被完全填满,并且最后一层中的所有节点都尽可能靠左。最后一层(第 h 层)中可以包含 1 到 2h 个节点。
2025-01-30 11:29:02
1159
原创 【LeetCode: 169. 多数元素 + Boyer-Moore 投票算法】
【LeetCode: 169. 多数元素 + Boyer-Moore 投票算法】给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。
2025-01-29 22:30:24
874
录屏和字幕软件 bandicamvip.zip ARCTIME-PRO-3.1.1-WIN64.rar
2023-03-07
Python实现商场购物
2023-02-09
RabbitMQ、RocketMQ、Kafka、ActiveMQ消息中间件常见的面试题目
2023-02-03
Java开发常用工具Snipaste+可视化Ncvicat12+笔记工具Typora+Postman测试API接口工具.zip
2022-12-30
Java相关环境的下载 Jdk1.8 maven-3.6.1 tomcat-9.0.37
2022-12-30
apache-skywalking-java-agent-8.13.0 apache-skywalking-apm-9.0.0
2022-12-29
Redis+Redis可视化工具RDM+RedisDesktopManager.exe
2022-12-28
mysql5版本和8版本的安装软件mysql-installer-5:mysql-installer-8
2022-12-28
ChatGPT VS 文心一言
2023-03-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅