力扣算法——第11题——go语言

func maxArea(height []int) int {
    
    
    indexLeft, indexRight := 0, len(height) - 1
    var ans int = 0
    for ; indexLeft < indexRight; {
    
    
        area := ((indexRight - indexLeft) * min(height[indexLeft], height[indexRight]))
        ans = max(ans, area)
        if height[indexLeft] < height[indexRight] {
    
    
            indexLeft++
        } else {
    
    
            indexRight--
        }
    }
    return ans
}

func min(x, y int) int {
    
    
    if x <= y {
    
    
        return x
    } else {
    
    
        return y
    }
}

func max(x, y int) int {
    
    
    if x >= y {
    
    
        return x
    } else {
    
    
        return y
    }
}

おすすめ

転載: blog.csdn.net/qq_44011116/article/details/121915599