F
fisherman90
Gast
Hallo zusammen, ich habe ein riesen-Problem:
Thema: Binärbaum, Programm: Codieren und Decodieren via Binärbaum
Morgen is Abgabetermin für ein Projekt in meiner Schule und mein Programm läuft super bis auf eins: das codieren!
Ich habe einen Binärbaum erstellt, jeweils mit Zeigern auf Objekte des Typs Baum, die links und rechts heißen.
Außerdem besitzt jedes Baumobjekt einen String inhalt, der einen Buchstaben speichert.
Die Methode Codieren soll rekursiv arbeiten und man soll wenn man einen String reingibt die Übersetzung in 0 und 1 bekommen! 0 = links, 1 = rechts
als Parameter übergebe ich den String der gesucht werden soll und den String hilf, welcher den Pfad in 0 und 1 darstellt.
Hier der Code:
(in der Klasse Baum)
Aufgerufen wird das ganze aus der Klasse Baumstart, dort wird das Ergebnis in eine Liste eingetragen:
Nun mein Problem: Wenn ich das ganze ausführe bekomme ich immer nur "[Zeichen nicht gefunden]" returnt!
Was mache ich falsch?
Würde mich über schnelle Antwort freuen!
MfG fisherman90
Thema: Binärbaum, Programm: Codieren und Decodieren via Binärbaum
Morgen is Abgabetermin für ein Projekt in meiner Schule und mein Programm läuft super bis auf eins: das codieren!
Ich habe einen Binärbaum erstellt, jeweils mit Zeigern auf Objekte des Typs Baum, die links und rechts heißen.
Außerdem besitzt jedes Baumobjekt einen String inhalt, der einen Buchstaben speichert.
Die Methode Codieren soll rekursiv arbeiten und man soll wenn man einen String reingibt die Übersetzung in 0 und 1 bekommen! 0 = links, 1 = rechts
als Parameter übergebe ich den String der gesucht werden soll und den String hilf, welcher den Pfad in 0 und 1 darstellt.
Hier der Code:
(in der Klasse Baum)
Code:
public String codieren (String q, String hilf)
{ String codex="[Zeichen nicht gefunden]";
int wert=q.compareTo(this.inhalt);
if(wert!=0)
{
if (this.links!=null)
{
this.links.codieren(q,hilf+"0");
}
if (this.rechts!=null)
{
this.rechts.codieren(q,hilf+"1");
}
}
else {codex=hilf;}
return codex;
}
Aufgerufen wird das ganze aus der Klasse Baumstart, dort wird das Ergebnis in eine Liste eingetragen:
Code:
anzeige.add(
wurzel.codieren(tcode.getText(),"")
);
Nun mein Problem: Wenn ich das ganze ausführe bekomme ich immer nur "[Zeichen nicht gefunden]" returnt!
Was mache ich falsch?
Würde mich über schnelle Antwort freuen!
MfG fisherman90