Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Implement Queue using LinkedList - C#

DZone's Guide to

Implement Queue using LinkedList - C#

· Web Dev Zone ·
Free Resource

Deploying code to production can be filled with uncertainty. Reduce the risks, and deploy earlier and more often. Download this free guide to learn more. Brought to you in partnership with Rollbar.

Queue using LinkedList - C#

 public class Node
        {
            public int Data { get; set; }
            public Node Next { get; set; }
            public Node(int data)
            {
                this.Data = data;
            }
        }

public class Queue
        {
            private Node _head;
            private Node _tail;
            private int _count = 0;

            public Queue() { }

            public void Enqueue(int data)
            {
                Node _newNode = new Node(data);
                if (_head == null)
                {
                    _head = _newNode;
                    _tail = _head;
                }
                else
                {
                    _tail.Next = _newNode;
                    _tail = _tail.Next;
                }
                _count++;
            }

            public int Dequeue()
            {
                if (_head == null)
                {
                    throw new Exception("Queue is Empty");
                }
                int _result = _head.Data;
                _head = _head.Next;
                return _result;
            }

            public int Count
            {
                get
                {
                    return this._count;
                }
            }
        }

Deploying code to production can be filled with uncertainty. Reduce the risks, and deploy earlier and more often. Download this free guide to learn more. Brought to you in partnership with Rollbar.

Topics:
c#

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}