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

11. Container With Most Water

时间:2017-04-10 09:53:20      阅读:207      评论:0      收藏:0      [点我收藏+]

标签:title   nat   mos   math   turn   nbsp   res   contains   point   

题目:

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 and n is at least 2.

链接:https://leetcode.com/problems/container-with-most-water/#/description

4/9/2017

10ms, 65%

注意第10,11行,如何更新两个指针。

 1 public class Solution {
 2     public int maxArea(int[] height) {
 3         int i = 0, j = height.length - 1;
 4         int volume = Math.min(height[i], height[j]) * (j - i);
 5 
 6         while (i < j) {
 7             if (Math.min(height[j], height[i]) * (j - i) > volume) {
 8                 volume = Math.min(height[j], height[i]) * (j - i);
 9             }
10             if (height[i] < height[j]) i++;
11             else j--;
12         }
13         return volume;
14     }
15 }

官方解释:https://leetcode.com/articles/container-most-water/

更多讨论:https://discuss.leetcode.com/category/19/container-with-most-water

11. Container With Most Water

标签:title   nat   mos   math   turn   nbsp   res   contains   point   

原文地址:http://www.cnblogs.com/panini/p/6687279.html

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