gpt4 book ai didi

java - 比较两个二叉树,看看它们是否具有相同的结构

转载 作者:行者123 更新时间:2023-11-30 04:25:15 25 4
gpt4 key购买 nike

另一个简单的,但我似乎无法理解。我需要编写一个方法来比较两个二叉树的结构并返回它们是否相同。数据和数据类型并不重要,结构才是重要的。以下是一些示例:

Examples!

这是我到目前为止的代码。我认为它非常接近。

public boolean sameStructure(OrderedSet<E> other) {
if (other.size() != size)
return false;
return sameStructureHelp(other, root, other.root);
}

private boolean sameStructureHelp(OrderedSet<E> other, TreeNode ref,
TreeNode otherRef) {
if (otherRef == null && ref != null)
return false;
if (otherRef != null && ref == null)
return false;
sameStructureHelp(other, ref.left, otherRef.left);
sameStructureHelp(other, ref.right, otherRef.right);
return true;

}

最佳答案

您粘贴的内容大部分是正确的,只缺少一个关键部分:您应该返回它们的 值,而不是只检查左右子树,这意味着如果树根植于当前节点满足结构相同的条件。

关于java - 比较两个二叉树,看看它们是否具有相同的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16073201/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com