本文共 763 字,大约阅读时间需要 2 分钟。
给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
说明:你不能倾斜容器
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/container-with-most-water 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。class Solution { public: int maxArea(vector & height) { /* 双指针:每次比较两边的容器高,所在容器更短的那个指针移动 */ int maxh=0; for(int i=0,j=height.size()-1;i
java
class Solution { //时间复杂度 O(n) public int maxArea(int[] height) { //双指针:每次比较两边的容器高,所在容器更短的那个指针移动 int size=height.length; int left=0; int right=size-1; int res=0; while(leftheight[right]) right--; else ++left; } return res; }}