leetcode-11-盛最多水的容器
給你 n 個非負整數 a1,a2,…,an,每個數代表座標中的一個點 (i, ai) 。在座標內畫 n 條垂直線,垂直線 i 的兩個端點分別為 (i, ai) 和 (i, 0)。找出其中的兩條線,使得它們與 x 軸共同構成的容器可以容納最多的水。
說明:你不能傾斜容器,且 n 的值至少為 2。
輸入:[1,8,6,2,5,4,8,3,7]
輸出:49
解法1:雙迴圈遍歷
public static int maxArea(int[] height) {
int res = 0;
if (height.length < 2 || height == null){
return res;
}
for (int i = 0; i < height.length; i++) {
for (int j = 1; j < height.length; j++) {
int area;
if (height[i]>height[j]){
area = (j-i)* height[j];
}else {
area = (j-i)*height[i];
}
if (area > res) res = area;
}
}
return res;
}
解法2:雙指標遍歷
public static int maxArea(int[] height) {
int res = 0;
if (height.length < 2 || height == null){
return res;
}
for (int i = 0; i < height.length; i++) {
int j = height.length - 1;
int area = 0;
while (i < j){
if (height[i] < height[j]){
area = height[i]*(j-i);
}else {
area = height[j]*(j-i);
}
res = area > res ? area : res;
j--;
}
}
return res;
}
res = area > res ? area : res;
//三目運算子可修改為
Math.max(area,res);
相關文章
- 11.盛最多水的容器
- [leetCode]11. 盛最多水的容器LeetCode
- 【LeetCode】11. 盛最多水的容器LeetCode
- leetcode-盛最多水的容器(c++)LeetCodeC++
- 【LeetCode Hot 100】11. 盛最多水的容器LeetCode
- 讓我們一起啃演算法----盛最多水的容器演算法
- 資料結構與演算法---盛最多水的容器、接雨水資料結構演算法
- 11_乘最多水的容器
- 動態規劃演算法——裝最多水的容器動態規劃演算法
- [LeetCode] Container With Most Water 裝最多水的容器LeetCodeAI
- LeetCodeHot100 283. 移動零 11. 盛最多水的容器 42. 接雨水 15. 三數之和LeetCode
- 智慧水務系統:構建高效節水的城市水網
- 水的特性
- 盛繪藝點獲得盛趣遊戲投資遊戲
- 水師提督速成指南:用Keras打造你的AI水軍KerasAI
- 儀器儀表水銀,水銀溫度計,水銀體溫計,水銀鍍金,汞的價格,水銀回收處理,淘砂金專用水銀
- extjs下載地址--最多例項--最多doc文件JS
- 今日水
- 容器產品關鍵能力覆蓋最多,阿里雲打贏雲原生關鍵一戰!阿里
- 水水的證件-身份證、證件加水印小工具
- 黑客人數最多的星座是處女座!黑客
- 使用次數最多的Java API排行JavaAPI
- Python的JAVA膠水——jpypePythonJava
- 全球能源消耗最多的燃料型別型別
- 那些被吐槽最多的程式語言
- 架構高可用之限流-抽刀斷水水更流架構
- 向水學習
- 超級膠水
- 趣談js的bind牌膠水JS
- OpenCV (iOS)中的漫水填充(12)OpenCViOS
- Tita智慧濾水壺:全家健康飲水靠它就夠了
- iOS 賈菊盛 簡歷iOS
- Linux中最多有多少程式?一個程式最多有多少執行緒?Linux執行緒
- mysql表最多欄位數MySql
- 淺述容器和容器映象的區別
- 10 個開發新人提及最多的 GitHub RepoGithub
- js查詢字串中字元最多的單詞JS字串字元
- SHOW PROCESSLIST 最多能顯示多長的 SQL?SQL