ac_830单调栈
题目描述
题目大意&链接
给定一个长度为 n 的整数数列,要求输出每个数左边第一个比它小的数,如果不存在则输出 -1。
输入输出样例:
输入:
5
3 4 2 7 5
输出:
-1 3 -1 2 2
详情:ac_830单调栈
解题思路
维护一个栈,栈中元素保持单调递增的顺序。遍历数列时,对于当前元素 x,不断弹出栈顶元素直到栈顶元素小于 x 或者栈为空。
完整代码
|
时间和空间复杂度
时间复杂度:O(n)
空间复杂度:O(n)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 ZW_Blog!