队列类Queue和堆栈类的简单应用
1.队列类Queue
队列是指先入先出的数据结构,每次只能访问队首的元素,新元素只能加入到队尾。
Queue类的Enqueue方法用于追加新元素,Dequeue方法用于取出队首元素,Peek方法则只读取队首元素。
demo:
public static void Queue() { Queue que1 = new Queue(); que1.Enqueue(new DateTime(2012, 1, 6)); que1.Enqueue("小寒"); que1.Enqueue(13); foreach (var item in que1) { Console.WriteLine("{0}的类型是:{1}", item, item.GetType()); } while (que1.Count > 0) { Console.WriteLine(que1.Peek()); Console.WriteLine(que1.Dequeue()); } Console.ReadLine(); }

2.堆栈类Stack
和队列正好相反,堆栈是指后入先出的数据结构,每次只能访问栈顶的元素,且新元素只能加入到栈顶。
Stack类的Push方法使新元素入栈,Pop方法使栈顶元素出栈,Peek方法则只读取栈顶元素。
demo:
public static void Stack() { Stack st = new Stack(); st.Push(1); int x = 2, tmp; while (st.Count < 20) { tmp = x + Convert.ToInt32(st.Peek()); st.Push(x); x = tmp; } //求第20个数字 Console.WriteLine(st.Peek()); //只读方式读取 foreach (var item in st) { Console.Write(item); Console.Write(' '); } //Pop()移除方式读取 Console.WriteLine(); while (st.Count > 0) { Console.Write(st.Pop()); Console.Write(' '); } Console.ReadLine(); }


浙公网安备 33010602011771号