[作业10-11]3.Stack和queue类的用法

Posted on 2009-10-15 17:33  Relax Active  阅读(443)  评论(0)    收藏  举报

说明:Stack(堆栈)作为一种集合类型,适合于处理应用程序使用完后就删除的临时数据项。Queue(队列)与Stack用法相似,唯一的区别是Queue以先进先出的结构创建集合。
Stack用法示例:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;

namespace Stack2
{
    class Program
    {
        static void Main(string[] args)
        {
            Stack alphabet = new Stack();   //实例化一个堆栈!
            alphabet.Push("A");              //放入一个值!
            alphabet.Push("B");
            alphabet.Push("C");

            Console.Write("第一个迭代: ");

            foreach (string item in alphabet)   //迭代堆栈中的值!
            {
                Console.Write(item);          //输出迭代的值,输出"A","B","C"!
            }

            Console.WriteLine("\n从堆栈中弹出一个值: " + alphabet.Pop().ToString()); //从堆栈中弹出一个值,根据后进先出原则,先弹出"C"!
            Console.Write("第二个迭代: ");

            foreach (string item in alphabet)    //再次迭代堆栈里的值!
            {
                Console.Write(item);              //输出迭代的值,这时为"A","B"!
            }

            Console.ReadLine();
        }
    }
}

Queue(队列)示例代码:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;

namespace Stack2
{
    class Program
    {
        static void Main(string[] args)
        {
            Queue alphabet = new Queue();   //实例化一个堆栈!
            alphabet.Enqueue("A");              //放入一个值!
            alphabet.Enqueue("B");
            alphabet.Enqueue("C");

            Console.Write("第一个迭代: ");

            foreach (string item in alphabet)   //迭代堆栈中的值!
            {
                Console.Write(item);          //输出迭代的值,输出"A","B","C"!
            }

            Console.WriteLine("\n从堆栈中弹出一个值: " + alphabet.Dequeue().ToString()); //从队列中弹出一个值,根据先进先出原则,先弹出"A"!
            Console.Write("第二个迭代: ");

            foreach (string item in alphabet)    //再次迭代堆栈里的值!
            {
                Console.Write(item);              //输出迭代的值,这时为"B","C"!
            }

            Console.ReadLine();
        }
    }
}


 

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3