1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol video solution AI分析

解题思路

关键定义回顾

  • 祖先:根到节点 u 路径上的所有节点(不含 u)。
  • “中序前面的祖先”:把整棵树做一次中序遍历,沿序列从左到右走,记录在到达 u 之前出现的、同时又是 u 的祖先的那些节点,按出现顺序计数,第 k 个即答案;若不足 k 个返回 -1。

总体算法(一次建树 + 一次中序,O(n))

P3657.第2题-二叉树中序遍历的第k个祖先节点

    1000ms Tried: 3872 Accepted: 587 Difficulty: 6 所属公司 : 华为
    算法与标签>二叉树

题目内容

在大规模语言模型 (LLM(LLM(LLM MOE)MOE)MOE) 架构中,每一层的 MLPMLPMLP 模块中有若干个专家。用一颗二叉树把这些专家组织起来,二叉树的每个节点是一个专家。

现给定一个二叉树的根节点,以及两个整数 uuu 和 kkk 。任务是找出节点在二叉树中序遍历序列中的第 kkk 个祖先节点的值。

一个节点的祖先节点是指从根节点到该节点路径上的所有节点(不包括该节点本身)。

这里,“第 kkk 个祖先”指的是在中序遍历序列中,位于节点 uuu 前面的所有祖先节点中的第 kkk 个位置祖先节点。如果这样的祖先节点不存在,则返回 −1-1−1。

输入描述

输入将包含两行。

第一行是一个字符串,表示一棵二叉树:

<1>空节点用 '#' 表示;

<2>非空节点的值为整数;

<3>节点之间用一个空格分隔;

<4>树的层次遍历顺序给出比如,"123123123##454545“ 表示根节点为 111 ,左子节点为 222 ,右子节点为 333 ; 222 没有子节点; 333 的左子节点为 444 ,右子节点为 555 。

第二行包含两个整数 uuu 和 kkk ,分别表示目标节点的值和要查找的祖先节点的偏移量, 一个空格分隔这两个值。

输出描述

一个整数,表示在中序遍历序列中节点 uuu 的第 kkk 个祖先节点的值。如果不存在,则返回 −1-1−1 。

样例1

输入

30 15 45 7 20 35 50 # # 18 # # 40
40 3

输出

-1

说明

二叉树结构如下:

中序遍历的顺序是:7,15,18,20,30,35,40,45,507,15,18,20,30,35,40,45,507,15,18,20,30,35,40,45,50。

节点 u=40u=40u=40 。在中序遍历序列中,位于 404040 前面的节点有 7,15,18,20,30,357,15,18,20,30,357,15,18,20,30,35 。

节点 404040 的祖先节点有 30,45,3530,45,3530,45,35 。

在祖先节点中,在中序遍历序列中位于 404040 前面的有 30,3530,3530,35 。

按照中序遍历顺序,其前面的祖先节点有: 30,3530,3530,35。

第 K=3K=3K=3 个祖先节点(即在 404040 前面第三个位置的祖先节点)不存在。

样例2

输入

10 5 15 2 7 12 18
7 1

输出

5

说明

二叉树结构如下:

中序遍历的顺序是:2,5,7,10,12,15,182,5,7,10,12,15,182,5,7,10,12,15,18 。

节点 u=7u=7u=7 。在中序遍历序列中,位于 777 前面的节点有 2,52,52,5 。

第 k=1k=1k=1 个祖先(即在 777 前面第二个位置的祖先)是 555 。

开通会员即可查看完整视频题解: 1.题目讲解 2.思路分析 3.逐行代码手写

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 2, 50ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?