gpt4 book ai didi

java - 对称树算法

转载 作者:搜寻专家 更新时间:2023-10-30 23:35:27 25 4
gpt4 key购买 nike

我需要帮助解决这个问题。请仅提供提示

Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). Example

/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
public class Solution {
public boolean isSymmetric(TreeNode root) {
if((root == null) || (root.left == null && root.right == null)){return true;}

}

public boolean helper(TreeNode left, TreeNode right){


}


}

我遇到的麻烦是以某种方式创建了一个递归问题。我很困惑,因为当我们分支时,我如何使用助手将一个与另一个进行比较?

有人可以提供提示吗?

最佳答案

像下面这样递归调用你的辅助方法

if (left != null && right != null && left.key == right.key)
return (helper(left.left, right.right)
&& helper(left.right, right.left));

请注意,我们正在检查左节点的左和右节点的右是否对称以及左节点的右和右节点的左是否对称。如果两者都是对称的,那么主树也将是对称的。

关于java - 对称树算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43330487/

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