class Queue
{
Node First;
Node Last;
int length;
class Node
{
int value;
Node next;
Node(int value)
{
this.value = value;
}
}
Queue(int value)
{
Node newNode = new Node(value);
First = newNode;
Last = newNode;
length = 1;
}
public void printQueue()
{
Node temp = First;
while(temp!=null)
{
System.out.println(temp.value);
temp = temp.next;
}
}
public void getFirst()
{
System.out.println("First :"+First.value);
}
public void getLast()
{
System.out.println("Last :"+Last.value);
}
public void getLength()
{
System.out.println("Length :"+length);
}
public void enqueue(int value)
{
Node newNode = new Node(value);
if(length==0)
{
First = newNode;
Last = newNode;
}
else
{
Last.next = newNode;
Last = newNode;
}
length++;
}
public Node dequeue()
{
if(length==0)
{
return null;
}
Node temp = First;
if(length == 1)
{
First = null;
Last = null;
}
First = temp.next;
temp.next = null;
length--;
return temp;
}
}
class Main {
public static void main(String[] args) {
Queue myQueue = new Queue(1);
myQueue.enqueue(2);
myQueue.enqueue(3);
myQueue.enqueue(4);
myQueue.dequeue();
// myQueue.getFirst();
// myQueue.getLast();
// myQueue.getLength();
myQueue.printQueue();
}
}