资讯专栏INFORMATION COLUMN

Leetcode PHP题解--D76 993. Cousins in Binary Tree

张迁 / 747人阅读

摘要:题目链接题目分析在二叉树中,若两个叶子节点的层数相同,但具有不同的父节点,那么这两个节点互为节点。给定一个二叉树及两个节点,返回两个节点在二叉树中,是否互为节点。遍历完成后,直接判断数组中对应的值是否相同即可。

D76 993. Cousins in Binary Tree 题目链接

993. Cousins in Binary Tree

题目分析

在二叉树中,若两个叶子节点的层数相同,但具有不同的父节点,那么这两个节点互为cousin节点。

给定一个二叉树及x、y两个节点,返回x、y两个节点在二叉树中,是否互为cousin节点。

思路

因为x和y在二叉树中唯一,故我们可已先遍历整个二叉树,把当前节点的值作为数组的键,把当前的层数作为值,存进一个数组中。

遍历完成后,直接判断数组中对应的值是否相同即可。

最终代码
val = $value; }
 * }
 */
class Solution {
    /**
     * @param TreeNode $root
     * @param Integer $x
     * @param Integer $y
     * @return Boolean
     */
    public $data = [];
    public $level = [];
    function isCousins($root, $x, $y) {
        $this->inOrder($root, 0, 0);
        return ($this->prnt[$x] != $this->prnt[$y]) && ($this->level[$x] == $this->level[$y]);
    }
    function inOrder($root, $crnt, $level){
        if(is_null($root)){
            return;
        }
        $this->prnt[$root->val] = $crnt;
        $this->level[$root->val] = $level;
        $level++;
        $this->inOrder($root->left, $root->val, $level);
        $this->inOrder($root->right, $root->val, $level);
    }
}

若觉得本文章对你有用,欢迎用爱发电资助。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31632.html

相关文章

  • Leetcode PHP题解--D33 700. Search in a Binary Search

    摘要:题目链接题目分析从给定的二叉树中,查找指定值及其子节点。思路这个好像不用多说什么了吧按先序遍历搜索,找到则返回。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 700. Search in a Binary Search Tree 题目链接 700. Search in a Binary Search Tree 题目分析 从给定的二叉树中,查找指定值及其子节点。 思路 这个好像不用多...

    Blackjun 评论0 收藏0
  • Leetcode PHP题解--D59 226. Invert Binary Tree

    摘要:题目链接题目分析反转二叉树。思路类似反转两个变量,先把左右子树存进单独的变量,再相互覆盖左右子树。并对子树进行相同的操作。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 D59 226. Invert Binary Tree 题目链接 226. Invert Binary Tree 题目分析 反转二叉树。 思路 类似反转两个变量,先把左右子树存进单独的变量,再相互覆盖左右子树。 并...

    miqt 评论0 收藏0
  • Leetcode PHP题解--D31 965. Univalued Binary Tree

    摘要:题目链接题目分析如果二叉树中所有节点的值都相同,那么该二叉树被称为单值二叉树。思路思路比较简单,把值存入全局变量数组中,再对数组的值去重。判断该数组长度是否为即可。最终代码优化方案把值作为数组的键则可以省去去重步骤。若不同则直接退出即可。 965. Univalued Binary Tree 题目链接 965. Univalued Binary Tree 题目分析 如果二叉树中所有节点...

    anonymoussf 评论0 收藏0
  • Leetcode PHP题解--D56 637. Average of Levels in Bina

    摘要:题目链接题目分析返回每一层的平均值。思路和前一篇相似。先保存每一层的值,再逐层计算平均值即可。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 D56 637. Average of Levels in Binary Tree 题目链接 637. Average of Levels in Binary Tree 题目分析 返回每一层的平均值。 思路 和前一篇相似。先保存每一层的值,再逐...

    dendoink 评论0 收藏0
  • Leetcode PHP题解--D41 104. Maximum Depth of Binary T

    摘要:题目链接题目分析返回给定的二叉树有多少层。思路每下一级,层树,并记录到类属性中。并判断是否大于已知最深层树。最终代码若觉得本文章对你有用,欢迎用爱发电资助。 104. Maximum Depth of Binary Tree 题目链接 104. Maximum Depth of Binary Tree 题目分析 返回给定的二叉树有多少层。 思路 每下一级,层树+1,并记录到类属性lev...

    LMou 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<