[leetcode] Container with most water
来源:互联网 发布:细雪哪个译本好 知乎 编辑:程序博客网 时间:2024/06/08 15:10
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) 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.
思路:这道题的tag是two pointer。很明显,是要我们利用左右两个pointer,来寻找最优解。如果要存的水最多,我们需要宽和高都很大,最左指针和最右指针保证宽最大,但是高不一定是最大,左右两个指针,分别向中间遍历,如果遇到更低的数值则跳过,因为这种情况,水会更少(高和宽都降低了),如果遇到了更大的值,则保存下来,计算存水量。
public class Solution { public int maxArea(int[] height) { int l = 0; int r = height.length - 1; int result = 0; while(l < r){ result = Math.max(result, Math.min(height[l], height[r]) * (r - l)); int k; if(height[l] < height[r]){ k = l; while(k < r && height[k] <= height[l]){ k++; } l = k; } else{ k = r; while(k > l && height[k] <= height[r]){ k--; } r = k; } } return result; }}
0 0
- LeetCode: Container With Most Water
- [LeetCode]Container With Most Water
- LeetCode Container With Most Water
- LeetCode: Container With Most Water
- [Leetcode] Container With Most Water
- Leetcode: Container With Most Water
- [LeetCode] Container With Most Water
- LeetCode Container With Most Water
- [Leetcode] Container With Most Water
- [LeetCode]Container With Most Water
- LeetCode-Container With Most Water
- Container With Most Water leetcode
- LeetCode - Container With Most Water
- LeetCode: Container With Most Water
- Leetcode: Container With Most Water
- 【LeetCode】Container With Most Water
- Leetcode: Container With Most Water
- LeetCode:Container With Most Water
- Leopard Jdbc:简化Spring Jdbc使用
- 52. N-Queens II Leetcode Python
- Java读取txt文件和写入txt文件
- Microsoft Techdays Paris 2015
- LeetCode 题解(69): Reverse Integer
- [leetcode] Container with most water
- 9.10 叠箱子,不是很理解,建议做几道dp的leetcode题目
- 程序员最应该知道的20件事
- 9.10 叠箱子 ,建议看leetcode dp部分
- Arduino入门很简单
- dp 专题:1 Word Break I II
- LeetCode-Word Search
- ESQL之事务
- 究竟到哪里寻找OpenGL3.X开发库!!!