2017-09-21 53 views
1

這是aws educations的一個問題。我一直在思考這個問題很長一段時間,但我並沒有真正到達任何地方。使用二叉樹編碼整數中綴算術表達式

你想使用二叉樹來編碼整數的中綴算術表達式。操作是加法和乘法 繪製一棵樹看起來像什麼的圖片。 編寫一個類定義。 撰寫評估()成員函數。 你如何讓你的評價()迭代而不是遞歸

如果我能得到這將是罰款或一些例子解釋過

回答

0

的問題是問你寫一棵樹類可以代表像「2 + 2」或「3 * 1 + 5」這樣的表達式。所以這個類代表了一個樹,它有一個與「*」或「+」運算符的應用對應的根節點和內部節點。葉節點將對應於正在被操作的諸如「5」或「2」的整數值。一個典型的評估函數會產生這樣一棵樹的結果,可能是遞歸的。他們要求你也考慮如何迭代地得出結果。這種迭代方法可能涉及將節點連續添加到隊列或堆棧數據結構,並逐個彈出它們以便以某種方式處理。

請看這裏:https://en.wikipedia.org/wiki/Tree_traversal