Skip to content

Instantly share code, notes, and snippets.

@yssharma
Created November 3, 2012 13:53
Show Gist options
  • Save yssharma/4007436 to your computer and use it in GitHub Desktop.
Save yssharma/4007436 to your computer and use it in GitHub Desktop.
A java implementation of a Queue (Confused Coders)
class Item {
int data;
Item next;
public Item(int data) {
this.data = data;
}
}
public class Queue {
private Item front;
private Item rear;
public void enqueue(int data) {
if (rear == null) {
front = rear = new Item(data);
} else {
Item item = new Item(data);
front.next = item;
front = item;
}
}
public int dequeue() {
int data = rear.data;
rear = rear.next;
return data;
}
public void printQueue() {
if (rear == null) {
System.out.println("Queue is Empty");
return;
}
Item tmp = rear;
System.out.print("REAR");
while (tmp != null) {
System.out.print("<" + tmp.data);
tmp = tmp.next;
}
System.out.println("<FRONT");
}
public static void main(String[] args) {
Queue q = new Queue();
q.printQueue();
q.enqueue(1);
q.enqueue(2);
q.enqueue(3);
q.enqueue(4);
q.printQueue();
System.out.println("Dequeue :" + q.dequeue());
System.out.println("Dequeue :" + q.dequeue());
q.printQueue();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment