专栏首页程序生活Leetcode-Medium 11. Container With Most Water

Leetcode-Medium 11. Container With Most Water

题目描述

给一组非负整数数组,每个整数代表容器壁的高度,然后求最大的容量

思路

假设有一个数组a1,a2,a3.....,其中a1和a20组成的容器容量最大。容量计算公式maxa=max((right-left)min(height[left],height[right]),maxa)。我们可以看到如果a10>a21时,我们右侧的指针需要向左移,因为如果a10<a21时,此时a10(20-10)<a10*(21-10)。

代码实现

class Solution:
    def maxArea(self, height: 'List[int]') -> 'int':
        # 代码超时
        # maxa=0
        # for i in range(len(height)-1):
        #     cura=0
        #     for j in range(i,len(height)):
        #         cura=(j-i)*min(height[j],height[i])
        #         if cura>maxa:
        #             maxa=cura
        # return maxa
        left,right=0,len(height)-1
        maxa=0
        while left<right:
            maxa=max((right-left)*min(height[left],height[right]),maxa)
            if height[left]<height[right]:
                left+=1
            else:
                right-=1
        return maxa

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 大数据入门与实战-Hive操作与SQL 查询

    Hive的SQL基本上和我们原先的MYSQL的SQL查询效果差不多,下面是一些实例:

    致Great
  • Leetcode-Easy 977. Squares of a Sorted Array

    假设有两个指针,分别从头和从尾向中间移动,然后比较左右两个值的绝对值大小,绝对值大的将平方和添加到最左边,一直到两个指针相遇。

    致Great
  • Python 将word与id之间相互转换的

    致Great
  • 每日两题 T15

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

    合一大师
  • 【每天一道编程系列-2018.2.28】(Ans)

      Given n non-negative integers a1, a2, …, an, where each represents a point at...

    yesr
  • [Leetcode][python]Container With Most Water/盛最多水的容器

    后端技术漫谈
  • 【LeetCode-011】Container With Most Water

    Given n non-negative integers a1, a2, ..., an , where each represents a point at...

    周三不加班
  • js实现抛物线

    windseek
  • JAVA 拾遗--Future 模式与 Promise 模式

    写这篇文章的动机,是缘起于微信闲聊群的一场讨论,粗略整理下,主要涉及了以下几个具体的问题: 同步,异步,阻塞,非阻塞的关联及区别。 JAVA 中有 callb...

    kirito-moe
  • Oculus Rift, HTC Vive, SONY PSVR的全面对比

    逍遥剑客

扫码关注云+社区

领取腾讯云代金券