Come parte di un compito Java, devo prendere un'espressione aritmetica di input e archiviarla in un albero binario.Conversione di un'espressione infissa (con parentesi) in un albero binario
Ho eseguito tutto il necessario per l'assegnazione tranne la parte in cui ho letto la stringa dell'espressione e la memorizzo nell'albero binario.
Ho creato una classe chiamata BinaryTree. Il suo unico campo è un treenode chiamato root. Questo treenode è definito come un innerclass in BinaryTree. Dispone di 3 campi, un campo dati generici e due figli (sinistro e destro) di tipo BinaryTree.
sto avendo un tempo molto difficile definire un algoritmo per la lettura in un'espressione come
(5 * (2 + 3)^3)/2
e riporlo in un albero come questo
/
^ 2
* 3
5 +
2 3
Qualcuno può aiutare con l'algoritmo?
Provare prima una semplice stringa di equazione: '1 + 2'. Quando lo ottieni, fai: '1 + 2 * 3'. Ancora più complesso: '1 * 2 + 3'. Finalmente: '(1 + 2) * 3' –
Vuoi una spiegazione per l'algo? – Tushar