ho cercato la pagina wiki: http://en.wikipedia.org/wiki/Shunting-yard_algorithmdifficoltà a capire cosa fare con l'uscita di algoritmo di smistamento-cantiere
ho usato l'esempio di codice per costruire la prima parte, in pratica posso Attualmente girare:
3 + 4 * 2/(1 - 5)^2^3
in 3 4 2 * 1 5 − 2 3^^/+
Ma io non so come quindi utilizzare per 3 4 2 * 1 5 − 2 3^^/+
per ottenere 3.00012207
e il codice di esempio e una spiegazione sul wiki ar non ha senso per me.
Qualcuno potrebbe spiegare come valutare 3 4 2 * 1 5 − 2 3^^/+
e produrre la risposta. Grazie in anticipo. Non ho bisogno di un esempio di codice solo una buona spiegazione o una rottura di un esempio.
Non è importante, ma sto lavorando .net C#.
Uno stack è una struttura dati adeguata per raggiungere questo obiettivo, che tipo di raccolta suggeriresti ad utilizzare in Java (se lo si conosce)? A LinkedList o Deque? So che Java ha una classe Stack ma ho letto che non è utilizzabile a causa della sincronizzazione. –
tonix