Queue和Stack
2016-03-25 20:35
381 查看
/* Queue操作。 */ using System; using System.Collections.Generic; using System.Collections; using System.Linq; using System.Text; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { string[] months = { "January", "February", "March", "April", "May" }; Queue queue = new Queue(); foreach (string item in months) { queue.Enqueue(item); //将元素添加到Queue的末尾 } Console.WriteLine("队列中元素的个数是:{0}", queue.Count); Console.WriteLine("Peek操作:{0}\n",queue.Peek()); //从Queue的开始处返回最旧的元素,输出,但不删除 Console.WriteLine("Dequeue操作:"); while (queue.Count > 0) Console.WriteLine(queue.Dequeue()); //从Queue的开始处移除最旧的元素,输出,删除 Console.WriteLine("队列中元素的个数是:{0}", queue.Count); Console.ReadKey(); } } }
运行结果:
/* Stack操作。 */ using System; using System.Collections.Generic; using System.Collections; using System.Linq; using System.Text; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { string[] months = { "January", "February", "March", "April", "May" }; Stack stack = new Stack(); foreach (string item in months) { stack.Push(item); //入栈 } Console.WriteLine("栈中元素的个数是:{0}", stack.Count); Console.WriteLine("Peek操作:{0}\n", stack.Peek()); //返回栈顶元素,输出,但不删除 Console.WriteLine("Pop操作:"); while (stack.Count > 0) Console.WriteLine(stack.Pop()); //出栈,输出,删除 Console.WriteLine("栈中元素的个数是:{0}", stack.Count); Console.ReadKey(); } } }
运行结果:
注意:
连续输出Queue和Stack中的数据时,使用while(queue.Count>0)和while(stack.Count>0),不能使用for循环,因为Count属性的值在不断减少。
相关文章推荐
- c#调用COM组件
- C#实现把指定数据写入串口
- C#动态创建button的方法
- C#中抽象方法与虚拟方法的区别
- c#中虚函数的相关使用方法
- C#实现给图片加水印的方法
- C#使用加边法计算行列式的值
- C#实现多线程的同步方法实例分析
- C#中尾递归的使用、优化及编译器优化
- C#中的delegate委托类型基本学习教程
- C#实现子窗体与父窗体通信方法实例总结
- C#通用邮件发送类分享
- 举例讲解C#中自动实现的属性
- C#中this的用法集锦
- C#数据结构之顺序表(SeqList)实例详解
- C#.NET获取拨号连接的宽带连接方法
- C#异步绑定数据实现方法
- C#实现AddRange为数组添加多个元素的方法
- C#中Equality和Identity浅析
- C#比较二个数组并找出相同或不同元素的方法