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

【leetcode hot 100 11】移动零

一、暴力解法:两个 for 循环,外层循环遍历所有可能的左边界,内层循环遍历所有可能的右边界

class Solution {public int maxArea(int[] height) {int max_area=0;for(int i=0; i<height.length; i++){for(int j=i+1; j<height.length; j++){int x = j-i;int y = height[i]<height[j]?height[i]:height[j];int area = x*y;max_area = max_area>area?max_area:area;}}return max_area;}
}

错误分析:当涉及的数组较大时,会超出时间限制在这里插入图片描述

双指针:一个指向数组的头部,一个指向数组的尾部,然后我们计算当前两个指针所指向的边界能形成的容器的水容量,并更新最大值。

class Solution {public int maxArea(int[] height) {int left=0, right=height.length-1;int max_area=0;while(left<right){int area = (right-left) * Math.min(height[left],height[right]);max_area = Math.max(max_area,area);// 保存值较大的边if (height[left]>height[right]){right--;}else{left++;}}return max_area;}
}

注意:

  • 有效利用Math.min()Math.max()函数
  • 在更新left和right,保存值比较大的那一个
http://www.lryc.cn/news/543359.html

相关文章:

  • DeepSeek 部署实战:Ollama + 多客户端 + RAG
  • Linux通过设备名称如何定位故障硬盘
  • 大模型基础概念之神经网络宽度
  • 数据开发的简历及面试
  • 数据存储:一文掌握存储数据到ElasticSearch详解
  • Pytorch使用手册--将 PyTorch 模型导出为 ONNX(专题二十六)
  • Vue2+Element实现Excel文件上传下载预览
  • 物联网平台建设方案一
  • 机器学习破局指南:零基础6个月系统训练计划
  • mmdetection框架下使用yolov3训练Seaships数据集
  • unity学习52:UI的最基础组件 rect transform,锚点anchor,支点/轴心点 pivot
  • STM32MP15-FSMP1A单片机移植Linux系统platform总线驱动
  • Java 常见的面试题(设计模式)
  • 机器学习3-聚类
  • html中的css
  • 36. Spring Boot 2.1.3.RELEASE 中实现监控信息可视化并添加邮件报警功能
  • Linux: 已占用接口
  • Vscode的通义灵码占用空间过大问题【.lingma】
  • 鸿蒙Next如何自定义标签页
  • 知识拓展:Python 接口实现方式对比:Protocol vs @implementer
  • 开源程序wordpress在海外品牌推广中的重要作用
  • 【Python爬虫(89)】爬虫“反水”:助力数字版权保护的逆向之旅
  • k8s面试题总结(五)
  • 文章精读篇——用于遥感小样本语义分割的可学习Prompt
  • Spring Boot2.0之十 使用自定义注解、Json序列化器实现自动转换字典类型字段
  • 从电子管到量子计算:计算机技术的未来趋势
  • 将CUBE或3DL LUT转换为PNG图像
  • python文件的基本操作,文件读写
  • 华为认证考试证书下载步骤(纸质+电子版)
  • 正式页面开发-登录注册页面