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

网站dedecms模板怎么查看修改啊网站备案在哪里审批

网站dedecms模板怎么查看修改啊,网站备案在哪里审批,企业做微网站,成都建设招标网站首页一、题目描述与要求 二叉搜索树的最近公共祖先_牛客题霸_牛客网 (nowcoder.com) 题目描述 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 1.对于该题的最近的公共祖先定义:对于有根树T的两个节点p、q,最近公共祖先LCA(T,p,q)表示一个节点x&#…

一、题目描述与要求

二叉搜索树的最近公共祖先_牛客题霸_牛客网 (nowcoder.com)

题目描述

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

1.对于该题的最近的公共祖先定义:对于有根树T的两个节点p、q,最近公共祖先LCA(T,p,q)表示一个节点x,满足x是p和q的祖先且x的深度尽可能大。在这里,一个节点也可以是它自己的祖先.

2.二叉搜索树是若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值; 若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值

3.所有节点的值都是唯一的。

4.p、q 为不同节点且均存在于给定的二叉搜索树中。

数据范围:

3<=节点总数<=10000

0<=节点值<=10000

如果给定以下搜索二叉树: {7,1,12,0,4,11,14,#,#,3,5},如下图:

示例

示例1:

输入:{7,1,12,0,4,11,14,#,#,3,5},1,12

返回值:7

说明:节点1 和 节点12的最近公共祖先是7

示例2:

输入:{7,1,12,0,4,11,14,#,#,3,5},12,11

返回值:12

说明:因为一个节点也可以是它自己的祖先.所以输出12


二、解题思路

根据题目要求,需要我们在给定的二叉树中,找到所给出的两个结点的最近公共祖先。

思路很简单,就是我们从根节点开始分别去找到所给出的两个结点,并且记录根结点分别到两个结点的路径,然后比较这两条路径,路径中最后一个相同的结点就是两个结点最近的公共结点。其中路径的查找则可以利用二叉搜索树的性质,左子树都比根结点小,右子树都比根结点大,将所给定结点的值与根结点比较从而找到所给结点即可,路径则记录在vector中。

题目说了节点数量>=3,因此我们不需要判断树是否为空。

首先求出根结点到对应两个结点的路径;

利用for循环遍历两个路径,找到最后一个相同的结点,最后返回即可。


三、具体代码

class Solution {
public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * @param root TreeNode类 * @param p int整型 * @param q int整型 * @return int整型*/vector<int> getPath(TreeNode* root,int x){vector<int> path;TreeNode* p=root;while(p->val!=x){path.push_back(p->val);if(x<p->val) p=p->left;else p=p->right;}path.push_back(p->val);return path;}int lowestCommonAncestor(TreeNode* root, int p, int q) {//找到根结点到目标结点的路线vector<int> path_p=getPath(root,p);vector<int> path_q=getPath(root,q);int res=0;//最后结果for(int i=0;i<path_p.size()&&i<path_q.size();i++){//最后一个相同的结点就是最近的公共祖先if(path_p[i]==path_q[i])  res=path_p[i];else  break;}return res;}
};

http://www.15wanjia.com/news/169395.html

相关文章:

  • 慈溪做网站哪家好网页设计实训报告总结万能模板
  • 万网怎么建设网站淄博企业网站设计公司
  • 徐州营销网站建设报价深圳品牌网站建设
  • 重庆价格低建设网站公司手机高端网站建设
  • 建设银行网站查询密码是什么北京做网站设计招聘
  • 网站 侧边栏财经门户网站建设
  • 自己做网站怎么优化国内大型电子网站建设
  • 高端网站推荐当当网站开发系统说明
  • 河源市seo网站设计响应式网站开发需要的条件
  • 社保局网站建设意义全国网站联盟
  • 网站经营内容深圳约的网站设计
  • 根目录下两个网站怎么做域名解析seo服务是什么意思
  • 洛阳新光建站系统网订率推广技巧
  • 番禺网站建设虎丘苏州网站建设
  • 网站建设需要考哪些证高清的广州网站建设
  • 网站开发用哪个软件好wordpress调用js
  • 网站登录超时怎么解决信息类网站有哪些
  • 南京网站设公司阿里云 发布网站 教程
  • 做网站要用到什么微信分享接口网站开发
  • 无锡网站建设设计海事网站服务平台
  • dw响应式网站模板下载中国做网站知名的公司
  • 温州网页制作哪家好长沙seo行者seo09
  • 专业微信网站开发公司wordpress超级留言板路径
  • 好的公司网站制作品牌推广
  • app开发项目淄博网站建设优化珍云
  • 网站正在建设中永久wordpress七比2
  • 重庆最新网站备案营销百度app下载手机版
  • .net 微信网站开发百度指数不高的网站怎么优化
  • 网站由哪些部分组成部分组成免费 护理ppt模板
  • 网站开发的项目实战网站优化公司谷歌优化