- 博客(198)
- 收藏
- 关注
原创 力扣 42. 接雨水
当height[i]比st.top()所在元素值大时,如果st弹出一个元素后不是空栈,那么说明一定有凹槽(能装雨水)。因为栈里存放的是索引,所以可以求出横向有多长(即上面箭头的长度);再比较一下height[i]与新的height[st.top()]的长短,可以求出纵向有多长;相乘即可求出箭头所在位置蓝色面积。按列算,一列一列的求雨水面积。使用双指针是记录当前列左右侧的最大元素。C++题解2:单调栈(注意:栈存放元素索引就可以直接找到元素值)用单调栈可以求单前列右侧大的元素值。C++题解1:双指针。
2024-06-10 19:58:52
268
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人