首页 > 代码库 > 表达式求值(二叉树方法/C++语言描述)(五)

表达式求值(二叉树方法/C++语言描述)(五)

  本例中的二叉树图是使用Graphviz绘制的(Graphviz官网),在Ubuntu Linux下可以使用apt-get命令安装它:

1 sudo apt-get install graphviz

  表达式“1+2*3”和“1*2+3”的Dot代码如下:

 1 # exp1_3.dot
 2 digraph G{
 3     1
 4     2
 5     3
 6     "*" -> 2
 7     "*" -> 3
 8     "+" -> 1
 9     "+" -> "*"
10 }
11 
12 # exp2_4.dot
13 digraph G{
14     1
15     2
16     "*" -> 1
17     "*" -> 2
18     3
19     "+" -> "*"
20     "+" -> 3
21 }

  使用下面的命令来生成png图像:

1 dot -Tpng exp1_3.dot -o exp1_3.png
2 dot -Tpng exp2_4.dot -o exp2_4.png

表达式求值(二叉树方法/C++语言描述)(五)