@ninijia 在 Leetcode每日一题练习 ------ 407. 接雨水 II 中发帖
从Leetcode 每日一题练习继续讨论:
407. 接雨水 II
407. Trapping Rain Water II
题解
本题是一道难题,刚看到本题可能会想到另一道经典的接雨水,即一维的接雨水,也可能会想到或许可以使用和另一道题类似的解法,接雨水经典的解法是动态规划,分别从首尾遍历数组得到各个位置左右的最大值,取两个最大值中较小的那个与当前位置高度相减即得当前位置能接的雨水,这种解法的好处在于,不需要知道最大值具体对应的位置,只需知道最大值是什么就可以解决问题。如果本题使用类似的解法则应对行列也采用同样的方式得到每个位置四个方向的最大值,取其中最小的那个。但这种方法有很大的问题,因为这是一个二维平面,如果一个位置相邻位置对应的四个方向中的值有小于当前位置对应的四个方向值中最小的那个,则这个位置的雨水会顺着相邻位置再从更小的边界流出去,所以当前位置四个方向中最大值的最小值并没有...