UVA 12219 Common Subexpression Elimination(STL)
题意就是求最小的表达式树,也就是把相同的表达式子树给替换成最前面相同的编号。做法:因为需要一一比较,所以把树给编号,方法是用根节点的字符串加左子树编号以及右子树编号。这样经过一次dfs就可以知道哪些是有重复的了。他要输出的编号可以用一个全局变量x,过程中遇到新的字符串就加加,如果这个树与子树是前面出现过的,那么就把x--。结构体里不仅要保存根节点字符串,左右子树编号,还要保存第一次出现的位置,
原创
2015-04-01 13:47:09 ·
1018 阅读 ·
0 评论