当前位置: 首页 > article >正文

【力扣hot100题】(004)盛水最多的容器

现在能这么快做出来纯粹是因为当时做的时候给我的印象实在太深了。

犹记得这题是当年开启我用CSDN记录leetcode日记历史的开端。

总之印象太深了不会都不行啊!!记得当年是想到用各种动态规划回溯等等等等最终发现是最简单贪心和双指针。

解法也是非常简单,使用双指针,因为水桶装的水取决于最短的那块木板,所以每次只要前移最短的那块板子,一直移动到比当前这块板子大,反反复复。

每次移动完就比较一下最终结果。

class Solution {
public:
    int maxArea(vector<int>& height) {
        int front=0;
        int back=height.size()-1;
        int result=0;
        while(front<back){
            result=max(result,(back-front)*min(height[front],height[back]));
            if(height[front]<height[back]){
                int x=front+1;
                while(x<back&&height[x]<height[front]) x++;
                front=x;
            }
            else{
                int x=back-1;
                while(x>front&&height[x]<height[back]) x--;
                back=x;
            }
        }
        return result;
    }
};


http://www.kler.cn/a/613449.html

相关文章:

  • 【go微服务】如何快速掌握grpc开发
  • 计算机二级WPS Office第十二套WPS演示
  • ETL中数据转换的三种处理方式
  • 职场新人面对不懂的问题应该如何寻求帮助?
  • 基于Dockerfile以docker运行java(可快速替换jar包实现工程更新)
  • 2007-2019年各省地方财政一般公共服务支出数据
  • Proxmox配置显卡直通
  • 算法基础_基础算法【快速排序 + 归并排序 + 二分查找】
  • centOS 7.9 65bit 修复Openssh漏洞
  • 知识库中嵌入模型(Embedding Models)与重排序模型(Re-ranking Models)推荐工具与库
  • 机器学习(八)
  • 蓝桥杯-大衣的回文数组(差分)
  • 19款超级华丽动画的图片轮播HTML5+CSS3模板源码
  • 19 python 模块
  • 详细解析int GetLength() const;声明中的const是修饰什么的?
  • javaWeb vue的简单语法
  • AI知识补全(七):AI Agent 智能代理是什么?
  • 前端Vue
  • TensorFlow 深度学习框架详解
  • 小学数学解题方法专题3-列表法-提升