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

(C++)盛水最多的容器--双指针法

 个人主页:Lei宝啊 

愿所有美好如期而遇


力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。icon-default.png?t=N7T8https://leetcode.cn/problems/container-with-most-water/

算法原理

双指针法,不一定是说就要使用指针,只是一种形象的说法,在数组中,我们一般将数组下标当做指针。这道题目中,我们定义left以及right,left赋值0,right赋值size-1,我们图示分析这道题目:

图示

代码

class Solution {
public:
    int maxArea(vector<int>& height) 
    {
        int right = height.size()-1;
        int left = 0;

        int maxV = 0;
        while(right != left)
        {
            int h = height[right] > height[left] ? height[left] : height[right];
            int w = right - left;

            int V = h * w;
            if(V > maxV)
                maxV = V;

            if(height[right] >= height[left])
            {
                left++;
            }
            else
            {
                right--;
            }
        }

        return maxV;
    }
};


http://www.kler.cn/a/154240.html

相关文章:

  • 构建SSH僵尸网络
  • reactflow 中 selectionMode 组件作用
  • 【C++】红黑树封装map—set
  • 另外一种缓冲式图片组件的用法
  • 【51单片机】LCD1602液晶显示屏
  • C++builder中的人工智能(27):如何将 GPT-3 API 集成到 C++ 中
  • Jmeter组件执行顺序与作用域
  • cuda 在 torch神经网络中哪些地方可以用?
  • 使用JSP+Servlet+MySQL实现登录注册功能
  • Linux基础项目开发1:量产工具——UI系统(五)
  • 计算机网络408
  • zabbix 监控
  • 【蓝桥杯选拔赛真题72】Scratch找一找 少儿编程scratch图形化编程 蓝桥杯创意编程选拔赛真题解析
  • 关于qiankun沙箱sandbox(面试题)
  • SQL Server 数据库,使用函数查询统计信息
  • Android HCI日志分析案例1
  • 医保支付方式探索——利益共享机制的文章分析
  • Python模块与Linux stat 命令:双剑合璧的文件系统探索
  • C++知识点总结(7):枚举算法之最大公约数和最小公倍数
  • JTag 刷写TC397 的Flash
  • rank的相关loss
  • 基于瑞芯微rk3588+寒武纪 | 38TOPS INT8算力的AI边缘计算盒子,智能安防、智慧工地、智慧城管、智慧油站
  • org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder 实现密码加密 验证 代码示例
  • 在Android上搭建一个NDK项目
  • 解套方式之认识T+0
  • 国内高速下载huggingface上的模型