题目

Given n non-negative integers a1a2, ..., an, where each represents a point at coordinate (iai). n vertical lines are drawn such that the two endpoints of line i is at (iai) 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.

代码:oj测试通过 Runtime: 132 ms

 class Solution:
# @return an integer
def maxArea(self, height):
# none case or one element case
if height is None or len(height)<2:
return 0
# left point and right point
left = 0
right = len(height)-1
max_container = 0
while left<right :
curr_container = min(height[left],height[right]) * (right-left)
max_container = max(curr_container,max_container)
if height[left]>height[right]:
right = right-1
else:
left = left+1
return max_container

思路

数组前后双指针技巧。

有点儿像动态规划。

两个指针一左一右left right

面积为:min(height[left],height[right])*(right-left)

指针迭代条件为:哪边的指针所指位置的高度小,就从哪边往中间移动。每一步更新一次max_container的值。

为什么哪边的指针所指的位置高度小就从哪边往中间移动呢?能装多少水是有较短的那边决定的,因此如果寻求装更多的水,则应该优先从较短的一侧开始求变。

这样一来,每一次迭代后,都保证max_container保存了当前以及之前的可能最大蓄水量。

最新文章

  1. POJ2965
  2. 【USACO 2.1】The Castle
  3. sqlserver OpenRowSet 对应的三种数据库驱动
  4. win10 python nltk安装
  5. Datatable的Select()方法简介
  6. http://docwiki.embarcadero.com/RADStudio/XE7/en/Delphi_Data_Types
  7. 2014年最新720多套Android源码2.0GB免费一次性打包下载
  8. Codeforces 544E Remembering Strings 状压dp
  9. [windows phone] 教你如何使地图动画缩放
  10. 编译的依赖不能vs的release工程
  11. 纯CSS3实现loading正在加载。。。
  12. MYSQL导入数据报错|MYSQL导入超大文件报错|MYSQL导入大数据库报错:2006 - MySQL server has gone away
  13. CSS input type=&quot;number&quot;出现上下箭头时解决方案
  14. Oracle使用
  15. SSRF漏洞分析与利用
  16. Confluence 6 管理协同编辑 - 最大编辑者的限制
  17. Linux 下的 Redis 安装 &amp;&amp; 启动 &amp;&amp; 关闭 &amp;&amp; 卸载
  18. flask加vue 动画 加载更多
  19. java 遍历Map的四种方式
  20. css 超详细文档

热门文章

  1. iOS-加载数据的实现-MJRefresh
  2. 几幅手稿讲解CNN
  3. 性能调优--大事务与Alwayson 之间的关系
  4. Merge更新同步一个表
  5. linux下获取外网IP
  6. TP5.0:同一个控制器访问不同方法
  7. win8.1和wp8.1共用代码,需要注意的一些问题
  8. GCH文件
  9. BZOJ1093: [ZJOI2007]最大半连通子图(tarjan dp)
  10. ajaxfileuplod 上传文件 essyui laoding 效果,防止重复上传文件