leetcode:739.每日温度/496.下一个更大元素

单调栈的应用:

求解当前元素右边比该元素大的第一个元素(左右、大小都可以)。

单调栈的构成:

单调栈里存储数组的下标;

单调栈里的元素递增,求解当前元素右边比该元素大的第一个元素;元素递减,求解当前元素左边比该元素大的第一个元素。

单调栈的作用:

记录遍历过的元素。

单调栈的解题过程:

将当前遍历到的元素与栈顶元素进行比较,有以下三种情况:

1.当前遍历到的元素>栈顶元素

已找到目标元素,弹出栈顶元素,(直到当前遍历到的元素<=栈顶元素)将当前遍历到的元素加入单调栈。【这是一个循环的过程】

2.当前遍历到的元素<=栈顶元素

直接将当前遍历到的元素加入单调栈。

代码实现:(739.)

leetcode496.

解题过程:

相比于纯粹的单调栈问题,这道题目还增加了两个数组之间的映射这一环节。

代码实现:

相关推荐
怎么没有名字注册了啊24 分钟前
求一个矩阵中的鞍点
数据结构·算法
Greedy Alg25 分钟前
LeetCode 74. 搜索二维矩阵
算法
小猪咪piggy1 小时前
【算法】day7 滑动窗口+二分查找
算法
仟千意1 小时前
数据结构:二叉树
数据结构·算法
一水鉴天1 小时前
整体设计 逻辑系统程序 之34七层网络的中台架构设计及链路对应讨论(含 CFR 规则与理 / 事代理界定)
人工智能·算法·公共逻辑
DuHz1 小时前
C程序中的数组与指针共生关系
linux·c语言·开发语言·嵌入式硬件·算法
而后笑面对1 小时前
力扣2025.10.19每日一题
算法·leetcode·职场和发展
·白小白2 小时前
力扣(LeetCode) ——11.盛水最多的容器(C++)
c++·算法·leetcode
沐浴露z3 小时前
【JVM】详解 垃圾回收
java·jvm·算法
代码欢乐豆4 小时前
编译原理机测客观题(7)优化和代码生成练习题
数据结构·算法·编译原理