[ソフト]は2014年後半)((A-B)*(C + D)後置表現は算術式をテストします
A.ab-CD *
B.abcd - * +
C.ab-*cd+
D.ab-C + D *
[A]
トピックのため、このようなタイトルの数と後置表現を尋ねるが、多くの方法で、このようなトピックを行うために、私は感じていない、多くのある朝、ソフトテストの質問で1-2ポイントの文法コンパイラ理論分析については、私たちはすぐにこれらの問題を解決するために、そう、私は私自身のアイデアとすぐにこのような問題に対処する方法を示します下のメソッドを使用します。
まず第一に、我々はカジュアルな作業要件我々が最初にこの表現式ツリーに描かれた(AB)*(C + D)サフィックス式にテストしたい場合、どのように式ツリーの絵を描くには?私たちは、二分木データ構造のトラバーサルの順序を描画する従ってください。次のとおりです。
式ツリーの後、最後の左と右のサブツリーのルートノードへのサブツリーであるバイナリツリーデータ構造を横断した後に考えてトラバースに私たちの話題の後置式のニーズの要件に従って作成されます。
上記方法下記左前記
左側のサブツリー:A
右のサブツリー:B
ルート: -
組み合わせの下で:AB-
、上記と同様の方法を使用する権利のために
左サブツリー:C
右のサブツリー:D
ルート:+
組み合わせ:CD +
次のステップは、組成物まで以下に示します
左サブツリー:AB-
右のサブツリー:CD +
ルート:*
組み合わせ:AB-CD + *
[概要]
トピック後置式のこのタイプを解決するために、最初の主題は、接尾辞に基づいて、この要求の前に来るので、横断するために考えられたバイナリツリートラバーサル順序に基づいて式ツリーのデータ構造を描き、思考のこのラインをたどるです問題を解決するためのアイデアはすぐにそれを行うことができるようになります。