11-盛水最多的容器

谁说胖子不能爱 提交于 2019-11-29 13:52:49

题目:给定一个数组,代表木板的高度。选两个木板,求两个木板的最大盛水量。

def max_area(arrys):
    l,r = 0,len(arrys)-1
    res = 0
    while l<r:
        contain = min(arrys[l],arrys[r])*(r-l)
        if contain>res:
            res = contain
        if arrys[l]<arrys[r]:
            l+=1
        else:
            r-=1
    return res

  注:使用前后两个指针向中间移动的策略,获取最大的蓄水量。指针移动策略为短的一侧木板移动。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!