Hey zusammen, ich verzweifel an dieser Aufgabe
Gegeben seinen die folgenden Java-Codefragmente:
Weiterhin sei eine Implementierung der Klasse Queue mit folgenden Methoden gegeben:
Bei den folgenden Aufgaben reicht es, die neu hinzukommenden Codeabschnitte zu
notieren; der bereits gegebene Code muss nicht wiederholt werden.
a) Durch das folgende Interface ist eine Methode breitensuche(Knoten knoten)
definiert, die einen Binärbaum unter Verwendung der Breitensuche nach einem gegebenen
Knoten durchsucht und diesen als Ergebnis zurückgibt.
Notieren Sie für die Klasse BinaerBaum den Code, der nötig ist, um das Interface
Searchable unter Verwendung der Klasse Queue zu implementieren!
Meine Lösung zu der Aufgabe ist folgendes:
Ich weis nicht ob es richtig ist, kann mir jemand dabei helfen...
Gegeben seinen die folgenden Java-Codefragmente:
Java:
class Knoten {
Object inhalt;
Knoten links;
Knoten rechts;
Knoten (Object e1) {
this.inhalt = e1;
}
}
class BinaerBaum{
private Knoten wurzel;
private Knoten cursor;
boolean isEmpty() {
return wurzel == null;
}
}
Weiterhin sei eine Implementierung der Klasse Queue mit folgenden Methoden gegeben:
Java:
class Queue () {
/** isEmpty testet, ob diese Queue leer ist. **/
boolean isEmpty() {...}
/** peek gibt das erste Element der Queue zurück, ohne es
aus der Queue zu entfernen **/
Knoten peek() {...}
/** poll gibt das erste Element der Queue zurück, und entfernt es
aus der Queue. Gibt null zurück, falls die Queue leer ist. **/
Knoten poll() {...}
/** offer fügt ein Element in die Queue ein. **/
void put (Knoten knoten) {...}
}
Bei den folgenden Aufgaben reicht es, die neu hinzukommenden Codeabschnitte zu
notieren; der bereits gegebene Code muss nicht wiederholt werden.
a) Durch das folgende Interface ist eine Methode breitensuche(Knoten knoten)
definiert, die einen Binärbaum unter Verwendung der Breitensuche nach einem gegebenen
Knoten durchsucht und diesen als Ergebnis zurückgibt.
Java:
public interface Searchable {
public Knoten breitensuche(Knoten knoten)
throws NoSuchElementException
}
Notieren Sie für die Klasse BinaerBaum den Code, der nötig ist, um das Interface
Searchable unter Verwendung der Klasse Queue zu implementieren!
Meine Lösung zu der Aufgabe ist folgendes:
Java:
class Binearbaum extends Queue implements Searchable{
public Knoten Breitensuche(Knoten knoten) throws NoSuchElementException{
warte= new Queue();
while(!warte.isEmpty()){
if(Knoten.links!=null){
(System.out.printKnoten.inhalt + " ");
warte.offer(Knoten.links);
warte.offer(Knoten.rechts);}
else throw new NoSuchElementException;}}
Ich weis nicht ob es richtig ist, kann mir jemand dabei helfen...