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) {
|
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