Преобразование инфиксного выражения (со скобками )в двоичное дерево

Как часть задания Java, я должен взять входное арифметическое выражение и сохранить его в двоичном дереве.

Я сделал все необходимое для задания, за исключением той части, где я читал строку выражения и сохранял ее в двоичном дереве.

Я создал класс BinaryTree. Его единственным полем является узел дерева с именем root. Этот узел дерева определен как внутренний класс в BinaryTree. Он имеет 3 поля, общее поле данных,и два дочерних элемента (слева и справа ), которые относятся к типу BinaryTree.

Мне очень трудно определить алгоритм чтения выражения, такого как

(5 *(2+3 )^3 )/2

и сохранить его в дереве вот так

             /
        ^          2
    *       3
  5   +
     2  3

Кто-нибудь может помочь с алгоритмом?

7
задан Vadim Kotov 7 February 2018 в 08:37
поделиться