
图论——表达式树
文章平均质量分 81
XDU_Skyline
Everything is over, everything is just beginning.
展开
-
例题11-1 公共表达式消除 UVa12219
1.题目描述:点击打开链接2.解题思路:第一步是构造表达式树,构造时可以利用一个map来记录出现的子树,并为之编号。例如,用(a,0,0)可以表示一个叶子a,用(b,3,6)表示根的名字是b,子树的编号分别是3,6的树。这样既可方便地得到最简表达式。本题总的时间复杂度为O(N*logN)。3.代码:#define _CRT_SECURE_NO_WARNINGS #include#i原创 2015-02-27 23:51:47 · 1779 阅读 · 0 评论 -
习题6-6 修改天平 UVa12166
1.题目描述:点击打开链接2.解题思路:本题利用dfs解决,不过思维上要发挥一些创造性。本题问至少要修改的砝码个数,那么首先可以想到要选一个基准砝码,其他所有的砝码都试图根据这个基准法吗而改变。不过本题的巧妙之处就在这里,只要以深度为depth(depth从0开始)重量为w的砝码为基准,那么就能求出整个天平的总重量,即w*2^(depth),在代码中可以简洁地表示为wth。这样,我们只用统计每原创 2015-04-01 14:40:44 · 1290 阅读 · 0 评论