Beispiel #1
0
        public int Pop()
        {
            var oldLast = _Last;

            _Last = _Last.GetPrev();
            _Last.SetNext(null);
            return(oldLast.GetValue());
        }
Beispiel #2
0
        public void Push(int value)
        {
            var newNode = new QueueNode(value);

            if (_First == null && _Last == null)
            {
                _First = newNode;
                _Last  = newNode;
            }
            else
            {
                _First.SetPrev(newNode);
                newNode.SetNext(_First);
                _First = newNode;
            }
        }
Beispiel #3
0
        public void Enqueue(BTreeNode data)
        {
            QueueNode newNode = new QueueNode();

            newNode.SetNext(null);
            newNode.SetData(data);

            if (QIsEmpty(this))
            {
                front = newNode;
                rear  = newNode;
            }
            else
            {
                rear.SetNext(newNode);
                rear = newNode;
            }
        }