题目描述
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
using System.Collections.Generic;
class Solution
{
public static Stack<int> stack2 = new Stack<int>();
public static Stack<int> stack1 = new Stack<int>();
public void push(int node)
{
stack1.Push(node);
if (stack2.Count==0||stack1.Peek()<stack2.Peek())
{
stack2.Push(stack1.Peek());
}
}
public void pop()
{
if(stack1.Peek()==stack2.Peek())
{
stack2.Pop();
}
stack1.Pop();
}
public int min()
{
return stack2.Peek();
}
public int top()
{
return stack1.Peek();
}
}