algorithm - 比较两棵树之间差异的算法有哪些?

标签 algorithm tree comparison string-comparison difference

我希望在比较两个树结构时找出差异。

节点将是字符串。我想捕获它发生在树的哪个级别。

例如找出这两棵树之间的差异:

enter image description here

最佳答案

一个简单的散列怎么样!列出第一棵树从根到叶的所有值并对其进行哈希处理,然后列出第二棵树从根到叶的所有值并与第一棵树进行比较,时间复杂度为 O(1)。可以拆分第二棵树(例如基于第一层)并使用多线程。在python中,只需将它们放在一个集合中,就可以了;或者散列它们并做一个 .difference()

关于algorithm - 比较两棵树之间差异的算法有哪些?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57779856/

相关文章:

C++ A星实现--判断节点是否已经在未清项优先队列中

Java SWT : remove selection of a tree item

java - 比较一组数组或值列表的最快方法

c++ - 进行顺序比较的优雅方式 (C++)

algorithm - D* 精简版 : how to compare and sort that paired keys?

arrays - 是否有可能在不到 O(n) 的时间内从排序列表中删除重复项?

python - 覆盖一定百分比点的最小可能区域

c++ - 二叉树的最小高度?

jquery - 添加单击事件以列出列表树中的项目

c# - 为什么这个字符串扩展方法没有抛出异常?