码迷,mamicode.com
首页 > 其他好文 > 详细

11. Container With Most Water

时间:2016-01-28 08:17:06      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

用two pointers夹逼的方法,刚开始把left和right设置在数组的两端,如果left处比right处矮,那么说明left处是瓶颈,否则就是right处是。

同时维护一个全局的maxArea

 1     public int maxArea(int[] height) {
 2         if(height == null || height.length < 2) {
 3             return 0;
 4         }
 5         int maxArea = 0;
 6         int len = height.length;
 7         int right = len - 1;
 8         int left = 0;
 9         while(left < right) {
10             int area = (right - left) * Math.min(height[left], height[right]);
11             maxArea = Math.max(maxArea, area);
12             if(height[left] < height[right]) {
13                 left++;
14             } else {
15                 right--;
16             }
17         }
18         return maxArea;
19     }

 

11. Container With Most Water

标签:

原文地址:http://www.cnblogs.com/warmland/p/5165091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!