力扣——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)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/393995.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

将tsx引入vue

按钮 vue <cl-batch-btn >新增批量</cl-batch-btn> import batch from "//modules/ad/components/ uploading/batch.vue" import ClBatchBtn from "/~/crud/src/components/batch-btn"; tsx

ViT论文详解

文章目录 前言一、ViT理论二、模型结构三、实验结果总结 前言 ViT是谷歌团队在2021年3月发表的一篇论文&#xff0c;论文全称是《AN IMAGE IS WORTH 16X16 WORDS:TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE》一张图片分成16x16大小的区域&#xff1a;使用Transformer进行按比…

Arch Linux - 2-安装中文输入法

文章目录 2 安装中文输入法2.0 准备2.0.1 前置条件2.0.2 建议 2.1 方案一&#xff1a;RimeIBus2.1.1 安装&配置2.1.2 添加输入法 2.2 方案二&#xff1a;IBusLibpinyin 2 安装中文输入法 2.0 准备 2.0.1 前置条件 预装gnome # 安装 pacman -S gnome# 设置开机自启动 sy…

【博客22】缤果Android_USB串口调试助手V1.0(高级篇)

超级好用的Android_USB调试助手 ( Android Studio Java) 开发工具: android-studio-2022.2.1.20-windows.exe usb-serial-for-android 目录 一、软件概要&#xff1a; 二、软件界面&#xff1a; 1.App演示 2.其他扩展展示 2.1 USB枚举 2.2 波特率 2.3 自定义指令集 2.…

8月6日Spring Boot学习笔记

MyBatis动态SQL 动态 SQL 大大减少了编写代码的工作量&#xff0c;更体现了 MyBatis 的灵活性、高度可配置性和可维护性。 if标签 <if test"判断条件">SQL语句</if> 当判断条件为 true 时&#xff0c;才会执行所包含的 SQL 语句。 choose、when和otherw…

tomcat文件上传漏洞练习

1、靶场账号注册 vulfocus 注册后邮箱中点击激活 2、首页选择并开启靶场 复制映射的ip和端口 在浏览器输入ip和端口 改成put并把1.jsp中内容复制进去 3打开哥斯拉&#xff0c;连接上面的网址

【PyTorch】深度学习PyTorch环境配置及安装【详细清晰】

文章目录 概要步骤Anaconda安装管理环境 安装PyTorchPyTorch环境使用JupyterJupyter简介安装Jupyter及使用 我的部分版本 概要 搭建PyTorch环境用于深度学习 步骤 Anaconda安装 安装详情&#xff1a;https://blog.csdn.net/Q20011102/article/details/127831950 我安装的是…

书生大模型实战营-入门关卡-Python 基础知识

任务&#xff1a; https://github.com/InternLM/Tutorial/blob/camp3/docs/L0/Python/task.md 完成&#xff1a; 任务1&#xff1a;Python实现wordcount import re from collections import defaultdictdef wordcount(text):# 转换为小写并使用正则表达式分割单词words re.…

【简历】宜春某二本学院:Java简历指导,秋招简历通过率低

简历说明 这是一个25届的二本宜春某学院的这个Java简历&#xff0c;今天看了两个简历&#xff0c;包括前面个985的&#xff0c;也是12306&#xff0c;这个12306已经烂大街&#xff0c;是个人都知道这个项目了&#xff0c;所以不要放在简历上&#xff0c;你不管大厂中厂还是小公…

【Redis进阶】Redis的持久化RDB和AOF

目录 持久化 RDB持久化 概念 原理 RDB 持久化的详细工作流程 1触发持久化&#xff1a; 2创建子进程&#xff1a; 3数据写入 RDB 文件&#xff1a; 4替换旧文件&#xff1a; 5回收子进程&#xff1a; RDB持久化的触发方式 1.手动触发&#xff1a; 2.自动触发&#…

FFmpeg推流

目录 一. 环境准备 二. 安装FFmpeg 三. 给docker主机安装docker服务 四. 使用 FFmpeg 进行推流测试 FFmpeg是一个非常强大的多媒体处理工具&#xff0c;它可以用于视频和音频的录制、转换以及流处理。在流处理方面&#xff0c;FFmpeg可以用来推流&#xff0c;即将本地媒体…

【第17章】Spring Cloud之Gateway服务调用

文章目录 前言一、用户服务二、网关服务1. 负载均衡2. 服务调用3. 登录拦截器 三、单元测试1. 启动服务2. 用户不存在3. 正常登录 总结 前言 在上一章我们使用JWT简单完成了用户认证&#xff0c;【第16章】Spring Cloud之Gateway全局过滤器(安全认证)&#xff0c;上一章内容已…

端点区间影响

前言&#xff1a;这一题本来想就是直接来一个前缀和来写&#xff0c;直接左边加一&#xff0c;右边减一&#xff0c;但是细想好像有问题&#xff0c;我们平时做的题目左边端点造成的影响会对这一段区间造成影响&#xff0c;但是这一题的话超过了左边端点就不会有影响了 那这一题…

vue3-ts:husky + prettier / 代码格式化工具

一、Prettier简介 Prettier是一个流行的代码格式化工具&#xff0c;它的主要作用是帮助开发者自动规范化代码的格式&#xff0c;提高代码的可读性和一致性。Prettier通过解析代码并使用自己的规则重新打印它&#xff0c;以确保代码风格的一致性和符合预设的格式化标准。 二、…

WPF学习(8)- Button按钮

1. 用法解析 Button因为继承了ButtonBase&#xff0c;而ButtonBase又继承了ContentControl&#xff0c;所以&#xff0c;Button可以通过设置Content属性来设置要显示的内容。例如 <Button Content"确定"/>我们使用Button的时机&#xff0c;通常是鼠标点击事件…

【Dash】使用 dash_mantine_components 创建图表

一、Styling Your App The examples in the previous section used Dash HTML Components to build a simple app layout, but you can style your app to look more professional. This section will give a brief overview of the multiple tools that you can use to enhan…

树莓派5进行YOLOv8部署的4种不同部署方式检测速度对比:pytorch、onnx、ncnn、tflite

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

Python 异步编程:Asyncio 实现原理

常见的并发模型 多进程/多线程异步ActorPub/Sub Python 异步的基石&#xff1a;协程 协程简介 概念&#xff1a;协作式多任务的子程序&#xff0c;用户态线程或微线程&#xff08;Coroutine&#xff09;。 特点&#xff1a;子程序执行可以中断&#xff0c;恢复后不会丢失之…

生物反应器对Organoids培养有啥帮助?有几种?快来看看!

Bioreactor Technologies for Enhanced Organoid Culture是《INTERNATIONAL JOURNAL OF MOLECULAR SCIENCES》上的一篇文章&#xff0c;介绍了用于类器官培养的生物反应器&#xff0c;包括搅拌式、微流体、旋转壁容器和电刺激四类。搅拌式生物反应器通过改善氧合和实现适当的谱…