public IEnumerator <T> GetEnumerator()
        {
            Queque temp = first;

            for (int i = 0; i < Count; i++)
            {
                yield return(temp.value);

                temp = temp.next;
            }
        }
        public T Dequeue()
        {
            if (Count <= 0)
            {
                throw new InvalidOperationException("Queue empty");
            }
            Count--;

            T returnValue = first.value;

            first = first.next;

            return(returnValue);
        }
        public void Enqueue(T item)
        {
            Queque temp = new Queque(item);

            if (Count > 0)
            {
                last.next     = temp;
                temp.previous = last;
                last          = temp;
                Count++;
            }
            else
            {
                first = last = temp;
                Count++;
            }
        }