- 博客(8)
- 收藏
- 关注
原创 二分答案的应用
二分答案(Binary Search on Answer)是一种算法思想,它适用于一类答案具有单调性且答案范围明确的问题。其核心思想是:不直接求解答案,而是在一个可能的答案区间内进行二分搜索,通过设计一个判定函数(check function)来检验当前猜测的答案是否可行,从而将搜索范围减半,最终逼近或确定最优解。
2026-06-28 21:43:18
636
1
原创 单调栈的应用
使用单调栈(单调递减)统计数组中每个元素作为子数组最小值的贡献度,然后将所有贡献度相加得到最终结果。:使用单调栈(单调递减)预处理数组,找到所有可能作为坡起点的候选位置,然后从右向左遍历数组,为每个元素寻找最远的坡终点,从而得到最大宽度坡。第一个比它大的元素的位置(不存在则为 0)。:使用单调栈(单调递减)统计二维矩阵中所有全1子矩形的数量。第一个比它矮的柱子的位置,从而计算以每个柱子高度为高的最大矩形面积。:使用单调栈(单调递减)为数组中每个元素寻找其。:使用单调栈(单调递减)为数组中每个元素寻找其。
2026-06-20 21:08:23
289
1
原创 洪水填充的应用
洪水填充算法,顾名思义,其工作原理类似于现实生活中的洪水蔓延——水会淹没所有与其相连的区域。在计算机科学中,该算法通常基于深度优先搜索(DFS)的递归实现,主要用于处理网格图中的连通性问题。
2026-06-16 21:46:48
303
1
原创 堆 优先队列 的简单建立
地址 https://leetcode.cn/problems/kth-largest-element-in-an-array/description/?地址 https://leetcode.cn/problems/merge-k-sorted-lists/description/?思路解析 先把所有节点的头节点按小跟堆进堆 每次弹堆顶 看堆顶有没有next 有就加进来 不有就不加 最后为空结束 用dummy cur 来组织。每个节点最多两个节点且 上一层没满 不能开是下一层。
2026-06-04 21:58:55
368
1
原创 前缀和解决子数组
对于数组arr 有一个sum数组满足sum[0] = 0;sum[i] 是arr前i个数的和对于sum[i] 和sum[i-1] 即 sum[i] 多加了一个arr[i-1] 所以 sum[i] = sum[i-1]+arr[i-1]
2026-05-28 22:18:49
406
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅