当前位置: 首页 > news >正文

昌网站建设在西安建设工程交易中心网站

昌网站建设,在西安建设工程交易中心网站,浙江柏臻软装设计有限公司,搜索排名优化软件文章目录 题目思路代码结果 题目 题目链接 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度…

文章目录

  • 题目
  • 思路
  • 代码
  • 结果

题目

题目链接
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。

百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”

例如,给定如下二叉搜索树: root = [6,2,8,0,4,7,9,null,null,3,5]

示例 1:
在这里插入图片描述
输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 8
出: 6
解释: 节点 2 和节点 8 的最近公共祖先是 6。

示例 2:
输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 4
输出: 2
解释: 节点 2 和节点 4 的最近公共祖先是 2, 因为根据定义最近公共祖先节点可以为节点本身。

说明:

  • 所有节点的值都是唯一的。
  • p、q 为不同节点且均存在于给定的二叉搜索树中。

思路

我们可以使用遍历的方式寻找通往 p 和 q 节点路径。我们可以考虑将这两个节点放在一起遍历,从而避免存储路径所需的空间。
遍历过程如下:

  1. 从根节点开始遍历。
  2. 如果当前节点的值大于 p 和 q 的值,则 p 和 q 应该在当前节点的左子树,将当前节点移动到其左子节点。
  3. 如果当前节点的值小于 p 和 q 的值,则 p 和 q 应该在当前节点的右子树,将当前节点移动到其右子节点。
  4. 如果当前节点的值不满足上述两条要求,则当前节点是分岔点。此时,p 和 q 要么在当前节点的不同子树中,要么其中一个就是当前节点。

这种方法省去了存储路径所需的空间,提高了效率。

代码

class Solution {
public:TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {if (root == NULL) return NULL;if (root->val == p->val || root->val == q->val) return root;TreeNode* left = lowestCommonAncestor(root->left, p, q), * right = lowestCommonAncestor(root->right, p, q);if (left == NULL) return right;if (right == NULL) return left;return root;}
};

结果

在这里插入图片描述

http://www.yayakq.cn/news/494963/

相关文章:

  • 一个ip做几个网站新媒体营销实训报告总结
  • 网站平台建设项目书成都成达设计院
  • 射阳做企业网站多少钱app网站制作下载
  • 舟山普陀区建设信息网站类似设计师联盟的网站
  • 栖霞建设采购网站引流推广平台违法吗
  • 接工程网站男人是用什么做的视频网站
  • 平度市建设局网站新昌县建设局网站
  • 湘潭网站建设 诚信磐石网络百度网盟 网站定向投放
  • 网站建设 中企动力板材生态板如果建立网站
  • 满山红网站建设公司wordpress字体编辑插件下载
  • 深圳优秀网站建设公司商城类型的网站怎么做
  • 兰州 网站seo作用与原理思维导图
  • 怎么健手机网站谷歌入口
  • 随州网专业网站优化外包
  • 烟台企业网站建设公司wordpress 七牛
  • 网站子页设计软件开发项目预算表
  • 网站建设领域文章福州百度首页优化
  • 深圳网站建设服务找哪家宁德市城乡建设网站
  • jsp网站开发大作业招标网与采购网官网
  • 网站开发 估算 excel企业网站建设上市公司
  • 中国最好的网站制作家在深圳我在房网信息论坛
  • 营口 微网站建设南京网站推广¥做下拉去118cr
  • 站群系统有哪些网站可以给pdf做笔记
  • 网站群系统破解版软件商店下载安装app
  • 银川网站怎么做seo做网站主要显哪些内容
  • 哪个网站可以做医学基础知识题设计软件排行
  • 网站游戏制作开发新乡网站建设那家好
  • 国内阿里巴巴网站怎么做西安最好的室内设计公司
  • 免费网站怎么制作在线做网页的网站
  • 安阳seo网站优化深圳所有公司名单