11_盛最多水的容器

简介: 11_盛最多水的容器

11_盛最多水的容器


 

package 数组;
/**
 * https://leetcode-cn.com/problems/container-with-most-water/
 * @author Huangyujun
 * 
 */
public class _11_盛最多水的容器 {
    /**
     * 核心:在比较小的范围里找到那个最大的值
     * 思路:面接的公式~高(取决于左右两侧两个柱子中比较小的那个柱子)
     * 但是咱希望高的数值比较大(则需要:在比较小的范围里找到那个最大的值)
     * @author Huangyujun
     *
     */
    //正解:双指针法
    public class Solution {
        public int maxArea(int[] height) {
            int l = 0, r = height.length - 1;
            int ans = 0;
            while (l < r) {
                //面积公式 高:最小的 【左柱子,右柱子】
                int area = Math.min(height[l], height[r]) * (r - l);
                ans = Math.max(ans, area);
                // 需要找小的:(目的:去获取那个小柱子中的最大值)
                if (height[l] <= height[r]) {
                    ++l;
                }
                else {
                    --r;
                }
            }
            return ans;
        }
    }
}



目录
相关文章
|
存储 容器
LeetCode刷题---11. 盛最多水的容器(双指针-对撞指针)
LeetCode刷题---11. 盛最多水的容器(双指针-对撞指针)
|
算法 容器
【算法专题突破】双指针 - 盛最多水的容器(4)
【算法专题突破】双指针 - 盛最多水的容器(4)
88 0
|
算法 测试技术 容器
【算法挨揍日记】day02——双指针算法_快乐数、盛最多水的容器
题目: 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为:
124 0
|
容器
11. 盛最多水的容器
11. 盛最多水的容器
84 1
|
容器
leetcode代码记录(盛最多水的容器
leetcode代码记录(盛最多水的容器
92 1
|
算法 测试技术 程序员
力扣经典150题解析之二十八:盛最多水的容器
力扣经典150题解析之二十八:盛最多水的容器
186 0
|
容器
【力扣】11. 盛最多水的容器
【力扣】11. 盛最多水的容器
110 1
|
容器
11.盛最多水的容器
11.盛最多水的容器
|
算法 容器
【经典LeetCode算法题目专栏分类】【第1期】左右双指针系列:盛最多水的容器、接雨水、回文子串、三数之和
【经典LeetCode算法题目专栏分类】【第1期】左右双指针系列:盛最多水的容器、接雨水、回文子串、三数之和
|
算法 Java C++
【数据结构和算法】盛最多水的容器
给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i, 0)和(i, height[i])。 找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。
131 2
【数据结构和算法】盛最多水的容器