力扣第11题C++盛最多水的容器

题目

题解

暴力解

复制代码
int maxArea(vector<int>& height) {
	int n = height.size();
	int max = 0;
	for (int i = 0; i < n; i++) {
		for (int j = i + 1; j < n; j++) {
			int  area = std::min(height[i], height[j]) * (j - i);
			max = std::max(area, max);
		}
	}
	return max;
}

双指针

复制代码
class Solution {
public:
    int maxArea(vector<int>& height) {
        int max = 0;
        int l = 0,r = height.size()-1;//两个指针
        while(l < r){
            int area = std::min(height[l],height[r]) * (r-l);
            max = std::max(max,area);

            //短的向长的移动
            if(height[l] < height[r]) l++;
            else r--;
        }
        return max;
    }
};
相关推荐
一匹电信狗2 小时前
【LeetCode面试题17.04】消失的数字
c语言·开发语言·数据结构·c++·算法·leetcode·stl
j_xxx404_2 小时前
从 O(N) 到 O(log N):LCR 173 点名问题的五种解法与最优推导
开发语言·c++·算法
xxxxxxllllllshi2 小时前
【LeetCode Hot100----12-栈(01-06),包含多种方法,详细思路与代码,让你一篇文章看懂所有!】
算法·leetcode·职场和发展
User_芊芊君子2 小时前
【LeetCode经典题解】平衡二叉树高效判断:从O(n²)到O(n)优化
算法·leetcode·职场和发展
五月茶2 小时前
力扣Hot100(Java版本)
java·算法·leetcode
自信150413057592 小时前
数据结构之单链表OJ复盘
c语言·数据结构·算法
仰泳的熊猫2 小时前
题目2265:蓝桥杯2015年第六届真题-移动距离
开发语言·数据结构·c++·算法·蓝桥杯
篮l球场2 小时前
合并 K 个升序链表
算法
苦藤新鸡2 小时前
87.分割成两个等和数组 leetcode416
数据结构·算法·leetcode