Container With Most Water—LeetCode

題目描述

思想

利用兩個指針,一個從開始位置向前遍歷,一個從結束位置向前遍歷java

不斷比較兩個指針對應位置的高度,將低的那個指針對應的高度換掉,並計算此時的面積,在這個計算過程當中,老是有一個最大的面積存在的spa

代碼實現

class Solution {
    public int maxArea(int[] height) {
        int start = 0;
        int end = height.length-1;
        int max = 0;
        int temp = 0;
        while(start != end){
            temp = (end - start) * Math.min(height[end], height[start]);
            if(temp > max){
                max = temp;
            }
            if(height[start] > height[end]){
                end--;
            }else{
                start++;
            }
        }
        return max;
        
    }
}
複製代碼
相關文章
相關標籤/搜索