leetcode 11. 盛最多水的容器

題目描述

給定 n個(gè)非負(fù)整數(shù)a_1,a_2,...,a_n,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn) (i, a_i)。在坐標(biāo)內(nèi)畫(huà)n條垂直線,垂直線i的兩個(gè)端點(diǎn)分別為 (i, a_i)(i, 0)。找出其中的兩條線,使得它們與x軸共同構(gòu)成的容器可以容納最多的水。
相關(guān)話題:?數(shù)組、雙指針????難度:?中等
說(shuō)明:你不能傾斜容器,且n的值至少為 2。


圖中垂直線代表輸入數(shù)組 [1,8,6,2,5,4,8,3,7]。在此情況下,容器能夠容納水(表示為藍(lán)色部分)的最大值為 49。

示例
輸入: [1,8,6,2,5,4,8,3,7]
輸出:49

思路:
利用雙指針協(xié)助,left指針開(kāi)始時(shí)指向0位置,right指針開(kāi)始時(shí)指向最后一個(gè)位置,兩者向中間靠攏,循環(huán)操作,更新記錄最大面積的變量maxArea。

  • 為了使得面積最大化,更新指向較小高度的指針,這樣更有可能使得面積增大;
  • 若是更新指向較大高度的指針,左右長(zhǎng)度變小,高度受較小高度限制,面積只會(huì)變小。
class Solution {
    public int maxArea(int[] height) {
        if(height.length < 2) return 0;
        int left = 0, right = height.length - 1;
        int maxArea = 0;
        while(left < right){
            maxArea = Math.max(maxArea, 
                       Math.min(height[left], height[right]) * (right - left));
            if(height[left] < height[right]){
                left++;
            }else{
                right--;
            }
        }
        return maxArea;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 描述: 給定 n 個(gè)非負(fù)整數(shù) a1,a2,...,an,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn) (i, ai) 。在坐標(biāo)內(nèi)畫(huà) n...
    大數(shù)據(jù)Zone閱讀 432評(píng)論 0 1
  • 給定 n 個(gè)非負(fù)整數(shù) a1,a2,...,an,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn) (i, ai) 。在坐標(biāo)內(nèi)畫(huà) n 條垂直...
    LeeYunFeng閱讀 740評(píng)論 0 50
  • 給定 n 個(gè)非負(fù)整數(shù) a1,a2,...,an,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn) (i, ai) 。在坐標(biāo)內(nèi)畫(huà) n 條垂直...
    小小堯閱讀 553評(píng)論 0 0
  • 題目 給定 n 個(gè)非負(fù)整數(shù) a1,a2,...,an,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn) (i, ai) 。在坐標(biāo)內(nèi)畫(huà) n ...
    sxqiong閱讀 350評(píng)論 2 0
  • 晨曦的清醒,朝陽(yáng)的執(zhí)著,日中的堅(jiān)韌,午后的安寧,晚夜的釋然。
    43ed7f979bb4閱讀 512評(píng)論 0 0

友情鏈接更多精彩內(nèi)容