Arvore binaria e expressao infixa

Alguém tem alguma dica á respeito de como armazenar uma expressão infixa em uma arvore binaria de modo que consiga fazer percursos em pré-ordem e pós-ordem?Usar uma pilha para auxiliar na inserção é imprescindível ou existe um algoritmo que despense o uso de pilha auxiliar?Se possível queria um auxílio com o uso de recurssão!

Usar árvores binárias pra armazenar expressões infixas é bem direto…

Se você tem uma expressão 5 + 2, por exemplo, você monta uma árvore

     +
  /     \
5        2

A raiz da árvore é o operador, e você percorre a árvore buscando operadores (pais) e seus operandos (filhos)…o único cuidado que tem que ser tomado é quanto à precedência de operadores; por exemplo, 5 + 2 * 3 deve virar

     +
  /     \
5        *
       /   \
     2      3

para que o valor da expressão com maior prioridade (multiplicação) seja calculado antes da de menor prioridade (adição). Percorrer essa árvore recursivamente te dá isso de graça :smiley: