有向無環圖表示算術表達式

題目描述: 用有向無環圖描述表達式(A+B)*((A+B)/A),至少需要頂點的數目爲幾個? 分析: 先畫出算術表達式 (A+B)*((A+B)/A)的二叉樹表示 (A+B)*((A+B)/A) 有重複的子表達式 (A+B),二叉樹中可實現對子表達式的共享 所以: 相同的葉子節點可以共用: 所以至少需要五個頂點: *,+, /, A,B 各一個。
相關文章
相關標籤/搜索