neues: queue
parent
7eb050d9d3
commit
8a75189133
30
List.java
30
List.java
|
@ -95,7 +95,33 @@ public class List<T>
|
|||
}
|
||||
|
||||
public T remove(int n) {
|
||||
return null; //Platzhalter
|
||||
if (n >= size()) return null; //um fehler zu beheben: Parameter darf nicht größer als tatsächlicher Länge sein
|
||||
|
||||
if ( n == 0){ // wenn Parameter 0 ist dann...
|
||||
T tmp = first.wert; // wert von first (=0) speichern
|
||||
first = first.next; //first "pfeil" auf den nächsten
|
||||
return tmp;//wert ausgeben
|
||||
}
|
||||
Node<T> current = first;
|
||||
|
||||
for (int i = 0; i < n-1; i++){
|
||||
current = current.next;
|
||||
}
|
||||
|
||||
T tmp = current.next.wert; // (Zwischenvariable um gelöschten Wert zu speichern)
|
||||
current.next = current.next.next; // Pfeil auf nächsten verschieben damit er nichr auf gelöschtem Zeigt
|
||||
return tmp; //gelöschten Wert ausgeben
|
||||
}
|
||||
|
||||
public String toString(){ // glaub um halt alles schön auszugeben
|
||||
String result = "";
|
||||
Node<T> current = first;
|
||||
while (current != null){
|
||||
result += current.wert + ", ";
|
||||
current = current.next;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
|
||||
/**
|
||||
* Beschreiben Sie hier die Klasse Queue.
|
||||
*
|
||||
* @author (Ihr Name)
|
||||
* @version (eine Versionsnummer oder ein Datum)
|
||||
*/
|
||||
|
||||
public class Queue<T>
|
||||
{
|
||||
private Node<T> first;
|
||||
|
||||
public Queue() {
|
||||
first = null;
|
||||
}
|
||||
|
||||
public boolean isEmpty() {
|
||||
if (first == null) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
public T front() {
|
||||
if (this.first == null) return null;
|
||||
return this.first.wert;
|
||||
}
|
||||
|
||||
public void enqueue(T val) {
|
||||
Node<T> neu = new Node<T>();
|
||||
neu.wert = val;
|
||||
|
||||
if (first == null) {
|
||||
first = neu;
|
||||
} else {
|
||||
Node<T> current = first;
|
||||
while (current.next != null) {
|
||||
current = current.next;
|
||||
}
|
||||
current.next = neu;
|
||||
}
|
||||
}
|
||||
|
||||
public T dequeue(int n) {
|
||||
T tmp = first.wert; // (Zwischenvariable um gelöschten Wert zu speichern)
|
||||
first = first.next; // Pfeil auf nächsten verschieben damit er nichr auf gelöschtem Zeigt
|
||||
return tmp; //gelöschten Wert ausgeben
|
||||
}
|
||||
|
||||
public String toString(){ // glaub um halt alles schön auszugeben
|
||||
String result = "";
|
||||
Node<T> current = first;
|
||||
while (current != null){
|
||||
result += current.wert + ", ";
|
||||
current = current.next;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue