LeetCode 11盛水最多的容器
力扣
解释:给定数组nums,求Max( min(nums[i],nums[j])*(j-i) ), 0<=i<j<nums.size()
目录
双指针
简单证明:
小技巧
1.对撞双指针
2.求最值
双指针
两个指针i,j指向数组首位
简单证明:
不失一般性,假设nums[i]<nums[j]
如果移动右指针j,则底也变小,高可能变小可能不变,面积不可能变大。
所以只能移动i,及每次移动对应数值小的指针
class Solution {
public:int maxArea(vector<int>& height) {
int n=height.size();
int i=0;
int j=n-1;
//双指针指向数组首尾int max_content=(j-i)*min(height[j],height[i]);
int max_temp;//循环中求最大值while(i<j)
{if(height[i]<height[j]){i++;max_temp=(j-i)*min(height[j],height[i]);max_content=max(max_temp,max_content);}else{j--;max_temp=(j-i)*min(height[j],height[i]);max_content=max(max_temp,max_content);}
}
return max_content;}
};
小技巧
1.对撞双指针
int i=0;
int j=max_index;
//移动双指针直至相遇
while(i<j)
{...i++;...j--;
}
2.求最值
int max_res=0//定义最大值
int max_temp;//定义每步最大值
循环
{
操作;
更新max_temp;
max_res=max(max_temp,max_res);
}//最小值类似
LeetCode 11盛水最多的容器相关推荐
- LeetCode 11盛水最多的容器12整数转罗马数字
目录 盛水最多的容器 题目描述 分析 整数转罗马数字 题目描述: 分析 结语 盛水最多的容器 公众号:bigsai,回复进群加入打卡,回复bigsai获取3GB的pdf资源.点赞再看,养成习惯! 题目 ...
- Leetcode题库 11.盛水最多的容器(双指针法 C实现)
文章目录 解析 思路 原理 代码 写法1 写法2 解析 p_0:左"指针" p_1:右"指针" Area:当前双"指针"代表面积大小 ret ...
- 力扣:11盛水最多的容器
class Solution:def maxArea(self, height: List[int]) -> int:i, j, res = 0, len(height) - 1, 0while ...
- Leecode刷题热题HOT100(11)——盛水最多的容器
- 力扣--盛水最多的容器
题目: 给你 n 个非负整数 a1,a2,-,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0).找出其中的两条 ...
- LeetCode【11--盛水最多的容器】LeetCode【12 -- 整数转罗马数字】
盛水最多的容器 题目描述 给定 n 个非负整数 a1,a2,-,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0 ...
- Container with most water(盛水最多的容器)
Container with most water(盛水最多的容器) 简单的证明 如图 题目: 给定 n 个非负整数 a1,a2,-,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n ...
- Leetcode:11.container-with-most-water(盛水最多的容器)
一开始直接想用暴力法加剪枝擦边通过的,没想到还是超时了: 谁知道最后输入从1-15000一共15000个数据,吓坏! 题解中得知双指针实现O(n),真的学到了,羡慕这些大佬的智商: 借鉴大佬题解:对O ...
- 十一、盛水最多的容器
题目:来源于LeetCode 给定一个长度为 n 的整数数组 height .有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) . 找出其中的两条线,使得它们与 ...
最新文章
- GitHub Draft Pull请求支持新的协作流程
- go struct{} 空结构体的特点和作用
- Java加密与解密的艺术~数字证书~证书使用keytool
- 宇宙的最原始状态是个什么样子
- [翻译]高阶Python一学就会
- 一张图让你搞懂DES与RSA混合加密技术
- js页面间通信方法实现
- JDK9API网盘下载
- Qt QLineedit 控件出发clicked信号问题
- 如何解决微软自带输入法突然变成繁体
- 奇异矩阵和非奇异矩阵 行列式矩阵简单理解 代数意义 几何意义 行列式的定义: 二阶行列式的几何意义: 三阶行列式的几何意义: 行列式化为对角形的几何解释: 二阶行列式乘积项的几何意
- 7种网络摄像机的设计方案,包含软硬件设计
- 用python编写AutoCAD插件日志
- DBMS_AW_EXP: BIN$XXXXXXX==$0 not AW$
- 单片机开发和嵌入式开发流程图
- 医院管理信息系统与临床信息系统
- GAN学习:一个简单的GAN搭建
- 3、Mybatis-Plus异常之There is no getter for property named ‘ew‘ in ‘class解决方案
- SLAM技术传统教学模式记录(转)
- 软通动力软件测试笔试题