在二叉树中,根节点位于深度 0 处,每个深度为 k 的节点的子节点位于深度 k+1 处。

如果二叉树的两个节点深度相同,但父节点不同,则它们是一对堂兄弟节点。

我们给出了具有唯一值的二叉树的根节点 root,以及树中两个不同节点的值 x 和 y。

只有与值 x 和 y 对应的节点是堂兄弟节点时,才返回 true。否则,返回 false。

Map<Integer,Integer> depth;//用来存节点值和对应的深度Map<Integer,TreeNode> parent;//用来存节点值和他的父节点public boolean isCousins(TreeNode root, int x, int y) {depth = new HashMap<>();parent = new HashMap<>();dfs(root,null);return depth.get(x) == depth.get(y) && parent.get(x) != parent.get(y);}void dfs(TreeNode node,TreeNode par){//整体是深度优先搜索遍历if (node != null){depth.put(node.val,par != null ? 1 + depth.get(par.val) : 0) ;//将当前值和层数存起来parent.put(node.val,par);//将当前值和他的父节点存起来dfs(node.left,node);dfs(node.right,node);}}

993 二叉树的堂兄弟节点相关推荐

  1. ⭐算法入门⭐《二叉树》简单07 —— LeetCode 993. 二叉树的堂兄弟节点

    文章目录 一.题目 1.题目描述 2.基础框架 3.原题链接 二.解题报告 1.思路分析 2.时间复杂度 3.代码详解 三.本题小知识 四.加群须知 一.题目 1.题目描述   在二叉树中,根节点位于 ...

  2. LeetCode 993. 二叉树的堂兄弟节点(层序遍历)

    文章目录 1. 题目 2. 解题 2.1 层序遍历 2.2 递归查找 1. 题目 在二叉树中,根节点位于深度 0 处,每个深度为 k 的节点的子节点位于深度 k+1 处. 如果二叉树的两个节点深度相同 ...

  3. 993. 二叉树的堂兄弟节点

    在二叉树中,根节点位于深度 0 处,每个深度为 k 的节点的子节点位于深度 k+1 处. 如果二叉树的两个节点深度相同,但父节点不同,则它们是一对堂兄弟节点. 我们给出了具有唯一值的二叉树的根节点 r ...

  4. LeetCode 993. 二叉树的堂兄弟节点

    截止到目前我已经写了 600多道算法题,其中部分已经整理成了pdf文档,目前总共有1000多页(并且还会不断的增加),大家可以免费下载 下载链接:https://pan.baidu.com/s/1hj ...

  5. 二叉树的堂兄弟节点(2种实现方式)

    二叉树的堂兄弟节点 题目 二叉树的堂兄弟节点(力扣:993) 在二叉树中,根节点位于深度 0 处,每个深度为 k 的节点的子节点位于深度 k+1 处. 如果二叉树的两个节点深度相同,但父节点不同,则它 ...

  6. 【leetcode 993】【二叉树的堂兄弟节点】

    leetcode 993[二叉树的堂兄弟节点] 这道题给出二叉树root,x和y,要解决的问题是在树中找到x和y,并且确定它们是否为堂兄弟节点的关系. 题目链接 https://leetcode-cn ...

  7. 二叉树的堂兄弟节点-c语言

    二叉树的堂兄弟节点-c语言 在二叉树中,根节点位于深度 0 处,每个深度为 k 的节点的子节点位于深度 k+1 处. 如果二叉树的两个节点深度相同,但 父节点不同 ,则它们是一对堂兄弟节点. 我们给出 ...

  8. LeetCode题解——二叉树的堂兄弟节点

    LeetCode题解--二叉树的堂兄弟节点 题目介绍 解题思路 这题考察的就是树的遍历,其中带有2个条件遍历树 第一个条件记录下x和y出现的深度 第二个条件记录下x和y的父节点 当父节点不同xy深度相 ...

  9. leetcode——第993题——二叉树的堂兄弟节点

    题目: 在二叉树中,根节点位于深度 0 处,每个深度为 k 的节点的子节点位于深度 k+1 处. 如果二叉树的两个节点深度相同,但 父节点不同 ,则它们是一对堂兄弟节点. 我们给出了具有唯一值的二叉树 ...

最新文章

  1. python转弯轨迹_使点沿着曲线轨迹移动
  2. 面试官:DDD如何指导微服务拆分?90%的程序员都答不上来!
  3. POJ1742 Coins(DP)
  4. android 9.0 https 适配,如何适配 Android 9.0? 在 Android 9.0 上发生 SSL handshake timed out 异常怎么解决...
  5. 【boost】time.1 同步计数器
  6. 打包签名时出现Conversion to Dalvik format failed with error 1
  7. 迈向新征程!2019国际第三代半导体大赛颁奖典礼盛大举办!
  8. 使用canvas给页面添加文字水印
  9. SAP License:ERP系统实施价格是多少?
  10. ES插件es-head下载和安装
  11. word2016 页码问题
  12. 厦大2021期中考试
  13. 转阿彪 PHP常见的安全问题
  14. 数据库MSSQLSERVER_18456错误解决
  15. 【unity 保卫星城】--- 开发笔记(Demo演示篇)
  16. 解析mac苹果电脑与Windows电脑的区别。他们各自有什么优势?
  17. 秀!如何搭建一个永久运行的个人服务器?
  18. 武汉的二本计算机学校有哪些,武汉二本大学有哪些学校
  19. 通过数据分析找出Netflix最适合学习英语的电影和电视剧
  20. 目标检测系列文章之SPP-net【2015】

热门文章

  1. gdal处理tiff文件的小问题
  2. 2021年广东省安全员B证第三批(项目负责人)考试及广东省安全员B证第三批(项目负责人)最新解析
  3. 【狮子数学】07有界闭区间上函数性质
  4. 代码是使用计算机的什么,什么是计算机的STOP代码-万兴恢复专家
  5. 【WinHex篇】WinHex功能面板简介
  6. 毕业设计基于Springboot框架作业查重系统2.0版本
  7. 网址验证的两种正则表达式
  8. 震撼大数据!80后年薪多少,才能摆脱中年危机?
  9. 【附源码模型】战网验证码识别
  10. 异或门HEF4070BT/CD4070BM96/CD4070BE/CD4070最新中文资料