Einzelnen Beitrag anzeigen

Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: string in eine rechnung umwandeln möglich?

  Alt 2. Dez 2006, 21:08
Ja, entweder so, oder (imho eleganter) mit zwei Stacks: In einem werden die Operatoren gespeichert, in dem anderen die Operanden. Vorteil davon ist, dass man den String dabei nur ein einziges mal von vorne bis hinten lesen muss. Man packt die Operanden und Operatoren dabei gleichzeitig in den entsprechenden Stack. Sobald der aktuell überprüfte Operator im String eine niedrigere Priorität hat als der, der ganz oben auf dem Stack liegt, kann man die oberen Elemente des Stacks bereits zusammenfassen.
Dazu braucht man natürlich außerdem noch einen Puffer, in dem gelegentlich etwas zwischengespeichert wird.
  Mit Zitat antworten Zitat