摘要:思路對(duì)撞指針問(wèn)題,求最大體積,當(dāng)縮小寬度時(shí),則高度必須比原來(lái)大。兩邊指針選較小的一個(gè)靠近直到比原來(lái)的大。此程序?qū)崿F(xiàn)中省略了內(nèi)層。
http://www.lintcode.com/en/pr...
Container with Most Water
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.
**思路** 對(duì)撞指針問(wèn)題, Volume = Width * Min(left_Height, right_Height). 求最大體積,當(dāng)縮小寬度時(shí), 則高度必須比原來(lái)大。---->兩邊指針選較小的一個(gè)靠近直到比原來(lái)的Height大。 # 此程序?qū)崿F(xiàn)中省略了內(nèi)層while。 public class Solution { public int maxArea(int[] height) { if (height == null || height.length < 2){ return 0; } int res = 0; int left = 0, right = height.length -1; while (left < right){ int minHeight = Math.min(height[left], height[right]); res = Math.max(res, minHeight * (right - left)); if (height[left] < height[right]){ left ++; } else{ right --; } } return res; } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/66503.html
摘要:最新更新請(qǐng)?jiān)L問(wèn)棧法復(fù)雜度時(shí)間空間思路最大盛水量取決于兩邊中較短的那條邊,而且如果將較短的邊換為更短邊的話,盛水量只會(huì)變少。所以我們可以用兩個(gè)頭尾指針,計(jì)算出當(dāng)前最大的盛水量后,將較短的邊向中間移,因?yàn)槲覀兿肟纯茨懿荒馨演^短的邊換長(zhǎng)一點(diǎn)。 Container With Most Water 最新更新請(qǐng)?jiān)L問(wèn):https://yanjia.me/zh/2018/11/... Given n...
摘要:軸上兩指針的距離為矩形長(zhǎng)軸取兩個(gè)指針?biāo)傅妮^短邊作為寬,相乘所得為最大裝水容量。將兩指針向中間移動(dòng),更新的最大值。 Problem Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn s...
摘要:題目解答這里如果左邊的數(shù)比右邊的數(shù)小,那么這就是取這個(gè)位置時(shí)的面積最大值。因?yàn)椴还茉趺聪蜃笠苿?dòng),最大高度也還是的值,而寬只會(huì)減小。所以我們只有向右移動(dòng)才有可能遇到更大的,從而有可能產(chǎn)生更大的面積。 題目:Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (...
摘要:我們需要找出這些線所圍成的容器,能裝最多水的水量。這道題是不能用蠻力法解決的,會(huì)超時(shí)。這個(gè)解法想法是這樣的,我們用兩個(gè)變量,指向數(shù)組的起始元素和末尾元素。首先計(jì)算這兩條線所圍成的容器面積,然后移動(dòng)指向較短的線段的指針。 題目詳情 Given n non-negative integers a1, a2, ..., an, where each represents a point at...
摘要:一題目盛最多水的容器給定個(gè)非負(fù)整數(shù),,,,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn)。在坐標(biāo)內(nèi)畫(huà)條垂直線,垂直線的兩個(gè)端點(diǎn)分別為和。找出其中的兩條線,使得它們與軸共同構(gòu)成的容器可以容納最多的水。在此情況下,容器能夠容納水表示為藍(lán)色部分的最大值為。 一、題目 盛最多水的容器: 給定 n 個(gè)非負(fù)整數(shù) a1,a2,...,an,每個(gè)數(shù)代表坐標(biāo)中的一個(gè)點(diǎn)?(i,?ai) 。在坐標(biāo)內(nèi)畫(huà) n 條垂直線,垂直線 i?...
閱讀 3672·2021-09-30 09:59
閱讀 2343·2021-09-13 10:34
閱讀 585·2019-08-30 12:58
閱讀 1514·2019-08-29 18:42
閱讀 2210·2019-08-26 13:44
閱讀 2932·2019-08-23 18:12
閱讀 3326·2019-08-23 15:10
閱讀 1633·2019-08-23 14:37