> For the complete documentation index, see [llms.txt](https://protegejj.gitbook.io/algorithm-practice/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://protegejj.gitbook.io/algorithm-practice/leetcode/two-pointers/11-container-with-most-water.md).

# 11 Container With Most Water

## 11. [Container With Most Water](https://leetcode.com/problems/container-with-most-water/description/)

## 1. Question

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 andnis at least 2.

## 2. Implementation

**(1) Two Pointers**

```java
class Solution {
    public int maxArea(int[] height) {
        int res = 0;
        int start = 0, end = height.length - 1, curHeight = Integer.MAX_VALUE;

        while (start < end) {
            curHeight = Math.min(height[start], height[end]);
            res = Math.max(res, curHeight * (end - start));

            if (height[start] <= curHeight) {
                ++start;
            }
            else {
                --end;
            }
        }
        return res;
    }
}
```

## 3. Time & Space Complexity

时间复杂度O(n), 空间复杂度O(1)
