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

力扣——11.盛最多水的容器

题目

暴力解

思路:

        遍历每一个可能组成的容器,然后计算比较最大值。

 代码:

int maxArea(vector<int>& height) {int z1 = 0, z2 = 0;int len = height.size();int val = 0;for (z1; z1 < len - 1; z1++) {for (z2 = z1 + 1; z2 < len; z2++) {val = max(val, (z2 - z1) * min(height[z1], height[z2]));}}return val;
}

复杂度:

        O(n^2):可能回超时

双指针解:

思路:

        从面积的计算角度进行突破:即底长和高度。两个指针分别指向左右两边,较短的一个指针指向下一个,同时计算面积更新最大值。

代码:

class Solution {
public:int maxArea(vector<int>& height) {int z1 = 0, z2 = height.size() - 1;// 优先移动较短的指针,移动一次就计算一次int val = 0, maxval = 0;while (z1 < z2) {maxval = max(maxval, (z2 - z1) * min(height[z1], height[z2]));if (height[z1] < height[z2]) {z1++;} else {z2--;}}return maxval;}
};

复杂度:

        时间复杂度:O(n)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 基于STM32设计的盆栽种植自动管理系统(微信小程序)(201)
  • Milvus Cloud架构详解:构建高效、可扩展的向量数据库系统
  • 分布式时序数据库TimeLyre 9.2发布:原生多模态、高性能计算、极速时序回放分析
  • C++的STL简介(四)
  • React 常用 Hooks 和使用的易错点
  • gradio在windows上公网发布踩坑指南
  • PHP高校教材管理系统-计算机毕业设计源码29810
  • 大语言模型系列 - Transformer
  • 去中心化社交:探讨Facebook在区块链平台上的实践
  • 【Linux】【系统纪元】Linux起源与环境安装
  • SQL注入
  • Linux--shell脚本语言—/—终章
  • 如何评估并选择最佳的国内项目管理软件?
  • 计算机组成原理——第二章(11)
  • 深圳水务展|2025深圳国际水务科技博览会
  • php的引用
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • Android组件 - 收藏集 - 掘金
  • CentOS 7 修改主机名
  • Cookie 在前端中的实践
  • CSS 三角实现
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • exif信息对照
  • Hexo+码云+git快速搭建免费的静态Blog
  • Iterator 和 for...of 循环
  • Java 多线程编程之:notify 和 wait 用法
  • JSONP原理
  • magento2项目上线注意事项
  • Node + FFmpeg 实现Canvas动画导出视频
  • passportjs 源码分析
  • Spring核心 Bean的高级装配
  • Web Storage相关
  • Xmanager 远程桌面 CentOS 7
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 给github项目添加CI badge
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 那些被忽略的 JavaScript 数组方法细节
  • 如何使用Mybatis第三方插件--PageHelper实现分页操作
  • 使用 QuickBI 搭建酷炫可视化分析
  • 问:在指定的JSON数据中(最外层是数组)根据指定条件拿到匹配到的结果
  • 一道面试题引发的“血案”
  • 找一份好的前端工作,起点很重要
  • 正则表达式
  • 仓管云——企业云erp功能有哪些?
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 树莓派用上kodexplorer也能玩成私有网盘
  • ​linux启动进程的方式
  • ​Spring Boot 分片上传文件
  • ​渐进式Web应用PWA的未来
  • !! 2.对十份论文和报告中的关于OpenCV和Android NDK开发的总结
  • #if和#ifdef区别
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW