美文网首页
42. 接雨水

42. 接雨水

作者: 上杉丶零 | 来源:发表于2019-02-25 19:59 被阅读0次
class Solution {
    public int trap(int[] height) {
        int left = 0;
        int right = height.length - 1;
        int sum = 0;

        if (left >= right) {
            return sum;
        }

        int leftHeight = height[left];
        int rightHeight = height[right];

        while (left < right) {
            if (leftHeight < rightHeight) {
                left++;

                if (leftHeight > height[left]) {
                    sum += (leftHeight - height[left]);
                } else {
                    leftHeight = height[left];
                }
            } else {
                right--;

                if (rightHeight > height[right]) {
                    sum += (rightHeight - height[right]);
                } else {
                    rightHeight = height[right];
                }
            }
        }

        return sum;
    }
}
image.png

相关文章

  • 42. 接雨水

  • 42. 接雨水

    ···class Solution {public int trap(int[] height) {int sum...

  • 42. 接雨水

    给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 ...

  • 42. 接雨水

    给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 ...

  • 42.接雨水

    题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。输入:...

  • 42. 接雨水

    给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。柱状图上面是由数...

  • 42. 接雨水

    题目描述 给定n个非负整数表示宽度为1的柱子高度,按此排序下雨后能接多少水。 示例: 解题思路 每个柱子可接的水量...

  • 42. 接雨水

    题目给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例:输入...

  • 42. 接雨水

  • 42. 接雨水

    给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 ...

网友评论

      本文标题:42. 接雨水

      本文链接:https://www.haomeiwen.com/subject/tuhnyqtx.html