《征服数据结构》单调栈

摘要:

1,单调栈的介绍

1,单调栈的介绍

单调栈就是单调递增或单调递减的栈,和我们前面讲的栈是一样的,只不过单调栈中的元素具有单调性

单调栈在面试的时候用的比较多,一般在求下一个更大元素的时候都会用到单调栈,关于这方面的题也有很多。

假如给定一个数组 nums ,对于数组中的每一个元素,查找它的下一个更大的值。比如数组 [2, 7, 4, 3, 5],返回的结果是 [7,0,5,5,0] 。因为 2 后面比它大的是 7 ,7 和 5 后面没有比它大的,所以是 0 ,4 后面比它大的是 5 ,3 后面比它大的也是 5 ,所以结果就是 [7,0,5,5,0] 。

对于这种求下一个更大元素的问题,我们首先想到的是单调栈,步骤如下:

相关推荐
cpp_25013 小时前
P1024 [NOIP 2001 提高组] 一元三次方程求解
数据结构·c++·算法·题解·二分答案·洛谷·csp
AI人工智能+电脑小能手11 小时前
【大白话说Java面试题】【Java基础篇】第15题:JDK1.7中HashMap扩容为什么会发生死循环?如何解决
java·开发语言·数据结构·后端·面试·哈希算法
Mrlxl.cn13 小时前
计算机网络——网络层
c语言·数据结构·计算机网络·考研
寒秋花开曾相惜14 小时前
(学习笔记)4.2 逻辑设计和硬件控制语言HCL(4.2.1 逻辑门&4.2.2 组合电路和HCL布尔表达式)
linux·网络·数据结构·笔记·学习·fpga开发
码完就睡17 小时前
数据结构——哈希表原理与C语言实现总结
数据结构·散列表
山甫aa18 小时前
二叉树遍历----从零开始的数据结构
数据结构·c++·二叉树
北顾笙98019 小时前
day35-数据结构力扣
数据结构·算法·leetcode
cpp_250119 小时前
P2249 【深基13.例1】查找
数据结构·c++·算法·题解·二分·洛谷
山甫aa20 小时前
二叉树算法-----从零开始的算法
数据结构·算法
睡觉就不困鸭21 小时前
第十七天 翻转字符串里的单词
数据结构·算法·哈希算法·散列表