wwewbw

博客园 首页 新随笔 联系 订阅 管理

引用自: [Michael McMillan.Data Structures and Algorithms Using C#]

Queue类的实现在C#中用ArrayList是毋庸置疑的;当需要往队列中插入数据项时,ArrayList的Add方法会把数据项放置在表的下一个自由元素上,当需要从队列中移除数据项时,ArrayList会在表中把每一个保留的数据项向前移动一个元素.

下面是实现代码:

namespace Queue
{
    class Queue
    {
        private ArrayList pqueue;
        private Queue()
        {
            pqueue = new ArrayList();
        }
        public void EnQueue(object item)   //入队
        {
            pqueue.Add(item);
        }
        public void DeQueue()                 //出队
        {
            pqueue.RemoveAt(0);
        }
        public object Peek()          //返回队头元素
        {
            return pqueue[0];
        }
        public void ClearQueue()   //清除队列
        {
            pqueue.Clear();
        }
        public int Count()            //返回队列元素数量
        {
            return pqueue.Count;
        }
    }
}

posted on 2010-02-21 14:08  wwewbw  阅读(1014)  评论(0编辑  收藏  举报