rendered paste bodypublic class Queue {
private QueueEl first;
private QueueEl last;
public void enqueue(Object obj) {
QueueEl el = new QueueEl(obj);
if(first == null) {
first = el;
last = first;
} else {
last.setNext(el);
last = el;
}
}
public QueueEl dequeue() {
QueueEl tmp = first;
first = first.getNext();
return tmp;
}
public boolean empty() {
return first == null;
}
public void print() {
int i = 0;
QueueEl tmp = first;
while(tmp != null) {
System.out.println("Element "+i+": "+ tmp.getObject()+" Referenz: "+tmp+" --> "+tmp.getNext());
i++;
tmp = tmp.getNext();
}
System.out.println("first: "+first);
System.out.println("last: "+last);
}
public void invert() {
QueueEl tmp1 = first, tmp2 = null;
while(first != last) {
tmp2 = first;
first = tmp1.getNext();
tmp1.setNext(first.getNext());
first.setNext(tmp2);
}
last = tmp1;
}
}
class QueueEl {
private QueueEl next;
private Object obj;
QueueEl() {};
QueueEl(Object obj) {
this.obj = obj;
}
public void setNext(QueueEl n) {
this.next = n;
}
public void setObject(Object o) {
this.obj = o;
}
public QueueEl getNext() {
return next;
}
public Object getObject() {
return obj;
}
}