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

【单调栈part02】| 503.下一个更大元素||、42.接雨水

🎈LeetCode503.下一个更大元素||

链接:503.下一个更大元素||

给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。

数字 x 的 下一个更大的元素 是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1 。

 

 

public int[] nextGreaterElements(int[] nums) {Stack<Integer> st=new Stack<>();int[] result=new int[nums.length];for(int i=0;i<result.length;i++){result[i]=-1;}for(int i=0;i<=nums.length*2;i++){while(!st.isEmpty() && nums[i%nums.length]>nums[st.peek()]){result[st.peek()]=nums[i%nums.length];st.pop();}st.push(i%nums.length);}return result;}

🎈LeetCode 42. 接雨水  

链接:42.接雨水

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

 

public static int trap(int[] height) {
//        单调栈Stack<Integer> st=new Stack<>();int result=0;int left=0;int right=0;int mid=0;for(int i=0;i<height.length;i++){while(!st.isEmpty() && height[i]>height[st.peek()]){right=i;mid=st.peek();st.pop();if(!st.isEmpty()){left=st.peek();}else{break;}int h=Math.min(height[right],height[left])-height[mid];int w=right-left-1;result+=h*w;}st.push(i);}return result;}
http://www.lryc.cn/news/110529.html

相关文章:

  • Java——如何使用Stream替换掉List<Student>中符合要求的元素
  • gin 框架中的 gin.Context
  • 新版chrome浏览器恢复下载的时候恢复底栏提示
  • ModuleNotFoundError: No module named ‘lsb_release‘
  • 2021-03-03 Multisim 14.0 电池充电防止反接保护
  • 【AI】《动手学-深度学习-PyTorch版》笔记(八):线性回归
  • uniapp 持续获取定位(登录状态下才获取)(不采用定时器)(任意页面都可监听定位改变)
  • 【Linux】Linux工具
  • ImageNet1000分类,英文原版,中文翻译版
  • 「Qt」常用事件介绍
  • 小鱼深度产品测评之:阿里云容器服务器ASK,一款不需购买节点,即可直接部署容器应用。
  • RK3588平台开发系列讲解(文件系统篇)什么是 VFS
  • Less is More: Focus Attention for Efficient DETR
  • 2023 8-5
  • 数据结构 | 线性数据结构——双端队列
  • 使用 Docker Compose 部署单机版 Redis:简单高效的数据缓存与存储
  • 第三章 图论 No.4最小生成树的简单应用
  • 微服务-nacos配置管理
  • 【开发问题】flink的sql任务,用命令行执行
  • Git常见问题
  • Android如何实现开机自启
  • Java数组实现的简单点名器
  • 百度UEditor编辑器如何关闭抓取远程图片功能
  • 网站无法访问的常见原因
  • (树) 剑指 Offer 34. 二叉树中和为某一值的路径 ——【Leetcode每日一题】
  • HDFS集群滚动升级以及回滚相关
  • 【LeetCode】094. 分割回文串II
  • CBCGPRibbon 添加背景图片
  • 无涯教程-Perl - last 语句函数
  • 网络安全 Day13-Linux三剑客awk知识