【发布时间】:2011-12-09 19:52:46
【问题描述】:
如何为二叉树的固定叶数置换所有可能的树结构? 哪种算法可以构建所有可能的树结构? 所有可能的树结构的数量是多少?
对于二叉表达式树,字母必须是叶子
例如 (a+b)*c
*
+ c
a b
叶子数为3
我们想置换成其他结构,比如
*
a +
b c
我想修复顺序,相同的顺序,因为我将在以后的过程中置换操作符节点。只是期待结构。算子节点的数量是动态的
如果你想挑战更多,你可以使用动态顺序 我也想知道动态排序算法
现在尝试先修复订单
我注意到的另一个约束是每个内部节点都应该有左叶和右叶
【问题讨论】:
-
能否请您详细解释一下您的问题。
-
每个结构的叶子是否必须以相同的顺序排列? (如您的示例所示。)
-
我想修复顺序,相同的顺序,因为我将在以后的过程中置换操作符节点。只是期待结构。算子节点数是动态的
-
我认为标签遗传算法对于这个问题是错误的。
-
@Avinash,想象一个游戏,你有几个输入数字和一个输出数字。你的任务是找到一个算术表达式,其结果尽可能接近给定的输出数。在一个塞尔维亚测验中查看该游戏的页面:www2.slagalica.tv/game/mojbroj