日期:2014-05-18  浏览次数:20785 次

实现一个queue形式的类。要求能添加,删除元素。遵从先进先出
实现一个queue形式的类。要求能添加,删除元素。遵从先进先出 

谁能帮我实现在可以么?

------解决方案--------------------
C# code

public class MyQueue<T>
    {
        object _mutex = new object();
        List<T> _container = new List<T>();

        public int Length
        {
            get{ return this._container.Count; }
        }

        public void Enqueue(T item)
        {
            lock (this._mutex)
            {
                this._container.Add(item);
            }
        }
        public T Dequeue()
        {
            T t = default(T);
            lock (this._mutex)
            {
                if (this._container.Count > 0)
                {
                    t = this._container[0];
                    this._container.Remove(t);
                }
                else
                    throw new Exception("Not has item.");
            }
            return t;
        }

调用

 MyQueue<int> q = new MyQueue<int>();
            q.Enqueue(1);
            q.Enqueue(2);
            q.Enqueue(3);
            q.Enqueue(4);
            int length = q.Length;
            for (int i = 0; i < length; ++i)
                Console.WriteLine(q.Dequeue());