zoukankan      html  css  js  c++  java
  • 求数组能组成的最大面积

    public class Client {
        public static void main(String[] args) {
            int[] height = {2,8,3,4};
            int area = maxContainer(height);
            System.out.println(area);
        }
    
        /**
         *求数组能组成的最大面积
         */
        static int maxContainer(int[] height) {
          int area = 0;
          int left = 0;
          int right = height.length - 1;
    
          while (left < right){
              area = Math.max(area,(right - left) * Math.min(height[left],height[right]));
              // 总是移动小的一条边
              // 如果移动大边,则新边可能变大也可能变小,但总体是变小的
              // 如果移动小边,则新边的高度可能变大,导致整体变大
              // 如果相同,则单移动一边整体还是变小,同时移动两边可能变大
              if(height[left] > height[right]){
                  right--;
              }else if(height[left] < height[right]){
                  left++;
              }else {
                  left++;
                  right--;
              }
          }
          return area;
        }
    }
  • 相关阅读:
    flask强大的三方组件flask-Migrate
    FTP和HTTP
    MD5-JS加密
    使用websocket实现单聊和多聊
    Flask上下文管理
    python中的with用法
    如何判断一个对象是可调用对象
    缓存
    websocket与http
    csrf
  • 原文地址:https://www.cnblogs.com/dongma/p/12731004.html
Copyright © 2011-2022 走看看