<分区>
我正在看 this question然后阅读 Tarjan's least common ancestors algorithm .我以前从未接触过 LCA 算法的任何应用。
这种LCA算法一般用在什么地方?
<分区>
我正在看 this question然后阅读 Tarjan's least common ancestors algorithm .我以前从未接触过 LCA 算法的任何应用。
这种LCA算法一般用在什么地方?
最佳答案
在编译器中,两个基本 block 的 LCA 是一个可以放置计算的地方,因此它对两者都可用。这对于消除公共(public)子表达式或插入 phi 节点以进行 SSA 转换可能很有用。不过,这些算法经过了很好的发展和高度优化,因此 LCA 本身可能很难看到,例如 SSA和 PRE
关于algorithm - 最低共同祖先算法的实际应用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3542452/