自定义博客皮肤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)
  • 收藏
  • 关注

原创 力扣每日一题——最大网格图中正方形空洞的面积

网格由 n + 2 条水平线和 m + 2 条竖直线组成,形成 1x1 的单元格。分别计算横向、纵向的「最长连续移除栏杆长度」,正方形的有效边长 = 「最长连续栏杆长度的较小值」 + 1;输入: n = 2, m = 3, hBars = [2,3], vBars = [2,4]输入: n = 2, m = 1, hBars = [2,3], vBars = [2]水平线是 [1,2,3,4],竖直线是 [1,2,3]。输入: n = 1, m = 1, hBars = [2], vBars = [2]

2026-01-15 15:55:15 997

原创 力扣每日一题——分割正方形ll

首先是定义事件与收集关键数据,每个正方形拥有上下两条水平边,对应两个扫描线事件,下边界对应type=+1的添加事件(扫描线到达y=yi时,添加该正方形的 x 区间覆盖),上边界对应type=-1的移除事件(扫描线到达y=yi+li时,移除该正方形的 x 区间覆盖),每个事件会存储对应的 y 坐标、x 区间左右端点和事件类型,同时在这一步会提取所有正方形的左右 x 坐标(xi和xi+li),为后续的 x 坐标离散化做准备。最小的 y 坐标是 1。输入: squares = [[0,0,2],[1,1,1]]

2026-01-14 15:20:54 944

原创 力扣每日一题——分割正方形

所有正方形的总面积 下方总面积上方总面积,因此 “上下面积相等” 等价于 “下方总面积 = Stotal​/2”,只需聚焦计算水平线下方的总面积,无需同时计算上下面积,简化逻辑。下方总面积是关于 k 的非递减连续函数(k 越大,下方总面积不会减少),因此可以通过二分查找定位满足 “下方总面积 = Stotal​/2” 的最小 k。任何在 y = 1 和 y = 2 之间的水平线都会有 1 平方单位的面积在其上方,1 平方单位的面积在其下方。输入: squares = [[0,0,2],[1,1,1]]

2026-01-13 20:55:37 999

原创 力扣每日一题——访问所有点的最小时间

对于任意两个相邻点,设它们的水平绝对距离为dx、垂直绝对距离为dy,无论dx和dy是否相等,两点间的最小移动时间都是max(dx, dy)—— 因为先沿对角线移动min(dx, dy)单位时间覆盖较短距离,剩余的|dx-dy|单位距离沿水平或垂直方向移动,总耗时恰好等于两者中的较大值。解释:一条最佳的访问路径是: [1,1] -> [2,2] -> [3,3] -> [3,4] -> [2,3] -> [1,2] -> [0,1] -> [-1,0]输入:points = [[3,2],[-2,2]]

2026-01-12 16:10:32 871

原创 力扣每日一题 —— 最大矩形

感冒发烧头有点昏,补上昨天的每日一题,看了灵神的思路研究好长一段时间才看懂。核心是预处理降维,将二维最大矩形问题转化为纵向一维柱状图的最大矩形问题;

2026-01-12 16:02:28 993

原创 力扣每日一题 ——两个字符串的最小 ASCII 删除和

定义 dp[i][j]:表示 s1 的前 i 个字符和 s2 的前 j 个字符中,最大公共子序列的 ASCII 值总和。

2026-01-10 18:35:47 774

原创 力扣每日一题 ——具有所有深节点的最小子树

本题的核心是利用后序遍历的特性,先获取子树信息再处理当前节点,符合子树深度决定父节点判断的逻辑依赖。核心判断条件 leftMaxDepth == rightMaxDepth && leftMaxDepth == maxDepth 去定位目标节点。

2026-01-09 14:38:33 583

原创 力扣每日一题 —— 两个字序列的最大点积

本题的核心是动态规划状态定义与转移:通过 f[i][j] 记录子问题的最优解,覆盖 “选 / 不选当前元素” 的所有情况;关键细节:初始化 f[i][j] 为当前两数乘积,确保子序列非空,即使所有乘积都是负数也能返回合法结果;

2026-01-08 22:10:52 885

原创 力扣每日一题——分列二叉树的最大乘积

核心解法是两次 DFS,第一次求整树总和,第二次遍历所有子树计算乘积并记录最大值。

2026-01-07 10:07:39 516

原创 力扣每日一题——最大层内元素和

解题思路比较简单,在算法实现上核心解法是层序遍历(BFS),通过队列按层处理节点,精准统计每一层的总和;关键点是“总和最大优先,总和相同取最小层号”,只需在遍历中比较并更新最大总和与对应层号;

2026-01-06 22:24:56 928

原创 力扣每日一题——最大方阵和

题目要求计算一个 n×n 矩阵通过任意次翻转元素符号(正变负、负变正)操作后,能得到的最大矩阵元素和,核心思路是统计负数个数 + 绝对值求和 + 奇偶性判断,利用负数翻转的特性推导最优解。你的目的是 最大化 方阵元素的和。请你在执行以上操作之后,返回方阵的 最大 和。输入:matrix = [[1,2,3],[-1,-2,-3],[1,2,3]]输入:matrix = [[1,-1],[-1,1]]时间复杂度:O(n²),其中 n 是矩阵的边长。空间复杂度:O(1)。

2026-01-05 14:49:34 749

原创 力扣每日一题——四因数

从 1 遍历到 √num(无需遍历到 num,因数成对出现,可减少遍历次数):若 num % i == 0:先记录 i,因数计数加 1,临时和累加 i;= num / i(避免平方数重复记录因数,如 4 的因数 2 只记录一次),若不相等,则记录 num / i,因数计数加 1,临时和累加 num / i;给你一个整数数组 nums,请你返回该数组中恰有四个因数的这些整数的各因数之和。定义一个临时列表用于存储 num 的因数,同时初始化因数计数为 0,临时和为 0。4 有 3 个因数:1, 2, 4。

2026-01-04 22:35:35 457

原创 力扣每日一题——给N✖️3网格图涂色的方案数

不出意外不是自己解出来的,看了两个题解看懂了思路,争取下次能做出来hard!

2026-01-03 20:40:04 905

原创 力扣每日一题——在长度2N的数组中找出重复N次的元素

查询当前元素在哈希表中的最新出现次数,若该次数等于 N,说明找到了目标元素,直接返回该元素,终止程序。我采用哈希表统计元素出现次数的核心思路来解决问题,核心逻辑是利用哈希表的键值对特性,记录每个元素的出现频次,当某个元素的频次达到 N 时,该元素即为我们要找的目标元素。题目给定一个长度为 2N 的整数数组 nums,其中仅有一个元素重复了 N 次,其余元素均只出现 1 次,要求我们找出这个重复 N 次的元素。输入:nums = [5,1,5,2,5,3,5,4]输入:nums = [1,2,3,3]

2026-01-02 19:12:22 412

原创 新的一年,养成好习惯

新的一年,记录自己养成之路,我将会在这里留下两道清晰的成长轨迹:一是力扣每日一题的刷题记录,从基础语法到算法逻辑,从暴力求解到优化思路;二是开发实战中的踩坑与复盘,记录那些在项目开发里遇到的真实问题以及对应的解决方案。希望自己通过这种笨拙的方式去养成一个好习惯,并梳理自己的知识体系,给自己在学习这条道路上留下一些回忆,以至最终做到“活到老,学到老”。题目难度为简单,需要将进位情况考虑周全,代码逻辑并不复杂。新的一年大家一起加油,共同进步!

2026-01-01 19:36:59 403

空空如也

空空如也

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

TA关注的人

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