LeetCode 11.Container With Most Water

题目

Given n non-negative integers a1, a2, …, an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two lines, which together with x-axis forms a container, such that the container contains the most water.

Note: You may not slant the container and n is at least 2.

思路

双指针,每次移动高度比较小的指针。参考

代码

class Solution:
    def maxArea(self, height):
        """
        :type height: List[int]
        :rtype: int
        """
        maxNum = 0
        left = 0; right = len(height) - 1
        while left < right:
            maxNum = max(maxNum, (right - left) * min(height[right],height[left]))
            if height[left] < height[right]: left += 1
            else: right -= 1
        return maxNum
阅读更多

扫码向博主提问

sparksnail

非学,无以致疑;非问,无以广识
去开通我的Chat快问
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/y12345678904/article/details/79968939
上一篇LeetCode 5. Longest Palindromic Substring
下一篇LeetCode 22. Generate Parentheses
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭