算法题解
LeetCode 42
困难
接雨水:单调栈怎样把凹槽面积一层层算出来
接雨水是单调栈的进阶题,重点不只是会写代码,而是理解为什么弹栈时刚好能确定一个凹槽的面积。
#algorithm
#monotonic-stack
#array
输入关键词开始搜索,支持单字。
查看全部结果标签
围绕这个标签整理的 Go 学习内容。
接雨水是单调栈的进阶题,重点不只是会写代码,而是理解为什么弹栈时刚好能确定一个凹槽的面积。
这题很适合训练“二分不是只找某个值,而是用条件判断缩小区间”的思维方式。
用每日温度这道题进一步巩固单调栈:为什么存下标、为什么可以一次遍历解决、以及答案为什么是距离而不是值。
这题是二分查找进阶版,关键不在 mid,而在于每次都先判断左右哪一侧仍然保持有序。
用经典滑动窗口题目建立“左边收缩、右边扩张”的基本思路,重点理解窗口何时失效、何时更新答案。
用经典的 Two Sum 题目梳理从暴力枚举到哈希表优化的思路演进,顺手建立一套稳定的算法题解写法。
把最容易写错的二分边界问题拆开讲清楚,帮助自己从背模板变成真正理解循环不变量。
用“下一个更大元素”这道典型题建立单调栈模板,重点讲清楚为什么栈里存下标,以及什么时候弹栈。