Registriert seit: 24. Okt 2008
263 Beiträge
Delphi 7 Enterprise
|
Re: Liste zu einem binären Baum umformen
10. Nov 2008, 16:16
Die Liste sieht z.B. so aus:
3+3*8
TokenList.Items[0].Value:='3';
TokenList.Items[0].Token:=tkInteger;
TokenList.Items[1].Value:='+';
TokenList.Items[1].Token:=tkAdd;
TokenList.Items[2].Value:='3';
TokenList.Items[2].Token:=tkInteger;
TokenList.Items[3].Value:='*';
TokenList.Items[3].Token:=tkMul;
TokenList.Items[4].Value:='8';
TokenList.Items[4].Token:=tkInteger;
Diese wird dann durchsucht mit ner eigenen Funktion die den Index ausgibt, falls das Token z.b. tkAdd vorhanden ist.
Dieses teilt dann die Liste in zwei seperate Listen, diese werden dann widerum mit der Funktion durchsucht, falls kein tkAdd vorhanden ist wird mit tkSub fortgefahren etc...
Bis halt jede Liste nur aus einem Item besteht.
|