ACWING C++ 模板
用数组模拟栈:AcWing - 算法基础课
// tt表示栈顶
int stk[N], tt = 0;
// 向栈顶插入一个数
stk[ ++ tt] = x;
// 从栈顶弹出一个数
tt -- ;
// 栈顶的值
stk[tt];
// 判断栈是否为空,如果 tt > 0,则表示不为空
if (tt > 0)
{
}
普通栈:
class CQueue:
def __init__(self):
self.s1, self.s2 = [], []
def appendTail(self, value: int) -> None:
self.s1.append(value)
def deleteHead(self) -> int:
if not self.s2:
w
本文探讨了栈在数据结构中的应用,包括如何使用两个栈实现队列、解决括号匹配问题以及逆波兰表达式求值等。同时,深入介绍了单调栈的概念,如栈排序、找到每日温度中的上升日期、以及计算柱状图的最大矩形等。通过这些实例,展示了栈在算法和面试问题中的重要性。
订阅专栏 解锁全文
617

被折叠的 条评论
为什么被折叠?



