栈的概念
栈是一种先进后出(LIFO)的数据结构,和队列(FIFO)恰好相反。
栈的内存表视图
常用方法
. | 名称 | 说明 |
---|---|---|
Push(T) | 在 Stack 的顶部插入一个对象。 | |
Pop() | 移除并返回位于顶部的对象 Stack。 | |
Peek() | 返回的对象顶部的 Stack 而不删除它。 |
简单使用示例
static void Main(string[] args)
{
Stack<string> queue = new Stack<string>();
//使用Push将元素压入栈
for (int i = 1; i <= 10; i++)
queue.Push(string.Format("这是第 {0} 个被压入栈的", i));
//使用foreach遍历栈
foreach (string item in queue)
Console.WriteLine(item);
Console.WriteLine(string.Format("Count:{0}", queue.Count)); //10
//使用Peek取出栈末端的一个元素
Console.WriteLine(queue.Peek());
Console.WriteLine(string.Format("Count:{0}", queue.Count)); //10
//使用Pop取出栈末端的一个元素
Console.WriteLine(queue.Pop());
Console.WriteLine(string.Format("Count:{0}", queue.Count)); //9
}
当前示例使用了栈中常用的三个方法,注意区分Pop和Peek的区别。