首页 > 其他分享 >每日一道leetcode:11. 盛最多水的容器

每日一道leetcode:11. 盛最多水的容器

时间:2023-06-15 11:06:13浏览次数:46  
标签:11 area int res height 纵轴 最多水 leetcode 指针


1. 题目(中等)

题目链接

每日一道leetcode:11. 盛最多水的容器_leetcode


每日一道leetcode:11. 盛最多水的容器_leetcode_02

2. 分析与题解

思路:双指针。面积的计算与横轴和纵轴都有关,根据木桶效应来看,纵轴中影响面积的是较短的那个纵轴。可以使用双指针,分别指向纵轴的两端。

class Solution {
public:
    int maxArea(vector<int>& height) {
        int n = height.size();
        int res = 0;
        int i = 0, j = n-1;
        while (i < j) {
            int area = min(height[i], height[j]) * (j-i);
            res = max(res, area);
            if (height[i] < height[j]) {
                i++;
            } else j --;
        }
        return res;
    }
};


标签:11,area,int,res,height,纵轴,最多水,leetcode,指针
From: https://blog.51cto.com/u_16161414/6485313

相关文章

  • 每日一道leetcode:9. 回文数
    1.题目(简单)题目链接给你一个整数x,如果x是一个回文整数,返回true;否则,返回false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121是回文,而123不是。示例1:输入:x=121输出:true示例2:输入:x=-121输出:false解释:从左向右读,为-121。从右向左读,为121......
  • 每日一道leetcode:6. N 字形变换
    1.题目(中等)题目链接2.分析与解答思路:矩阵模拟。分为两步:向下遍历向右上遍历classSolution{public:stringconvert(strings,intnumRows){//模拟intn=s.length();if(numRows==1||numRows>=n){returns;......
  • WT3211同步升压大电流芯片
       WT3211是一款高性能同步升压控制器,输入3V至32V输出外置MOS可驱动N沟道MOSFET。同步整流可提升效率,降低功率损耗并降低热要求。WT3211包括可调电流限制、可调软启动、可调补偿网和热关机,防止各种异常造成的损坏。对于不同的应用需求,我们可以选择合适的补偿网、电流限制、......
  • leetcode:vim模式下esc代码区失焦问题
    问题刷力扣时用的vim模式编码,当按下esc退出插入模式的时候,发现编辑的焦点直接从代码区退出了,还想继续往下敲代码就只能再次点鼠标原因浏览器使用了插件vimium,所以导致这个问题的出现。参考这里解决把插件设置力扣网站禁用就行,如果不想麻烦的关闭vimium插件的话。直接添加如......
  • Nginx [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in
    Nginx更新后经常遇到这样的问题,解决方法:123fuser-k80/tcp&&/etc/init.d/nginxstart或killall-9nginx&&/etc/init.d/nginxstart......
  • windows 11安装telnet教程
    很多时候我们需要使用telnet命令,ping端口通不通,所以得先安装下系统自带的telnet工具。telnet工具日常还是非常好用的。如果未安装则会提示:'telnet'不是内部或外部命令,也不是可运行的程序或批处理文件。 下面介绍两种方式,一个是老的操作方式,在"控制面板"中安装,另一个是在win......
  • 算法学习day55动态规划part15-115、392
    packageLeetCode.DPpart15;publicclassDistinctSubsequences_115{publicintnumDistinct(Strings,Stringt){int[][]dp=newint[s.length()+1][t.length()+1];for(inti=0;i<s.length()+1;i++){dp[i][0]=......
  • #yyds干货盘点# LeetCode程序员面试金典:分割回文串
    题目:给你一个字符串s,请你将s分割成一些子串,使每个子串都是回文串。返回s所有可能的分割方案。回文串是正着读和反着读都一样的字符串。 示例1:输入:s="aab"输出:[["a","a","b"],["aa","b"]]示例2:输入:s="a"输出:[["a"]]代码实现:classSolution{bo......
  • 【LeetCode双指针】合并两个有序数组,从后向前遍历
    合并两个有序数组https://leetcode.cn/problems/merge-sorted-array/给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数......
  • 系统调用IO-11-read,write,lseek及mycpy的实现
    1.概述readNAMEread-readfromafiledescriptorSYNOPSIS#include<unistd.h>//从fd中读,读到buf中去,读count个字节ssize_tread(intfd,void*buf,size_tcount);DESCRIPTIONread()attemptstoreaduptocountbytesfrom......