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

【C++二叉树】105.从前序与中序遍历序列构造二叉树

105. 从前序与中序遍历序列构造二叉树 - 力扣(LeetCode)

根据前序遍历和中序遍历构建二叉树

前序遍历访问方式:根-左子树-右子树

中序遍历访问方式:左子树-根-右子树

思路分析:

前序+中序可以构建一颗二叉树:

  1. 前序遍历可以确定根,中序遍历可以确定左子树的中序区间和右子树的中序区间。
  2. 使用左子树的前序+左子树的中序区间递归构建左子树。
  3. 使用右子树的前序+右子树的中序区间递归构建右子树。

代码实现:

注意:

prei要传引用,因为递归过程中要使用上一次递归的prei,如果传值,递归就找不到上一次的prei。


http://www.kler.cn/a/318413.html

相关文章:

  • 深度学习——优化算法、激活函数、归一化、正则化
  • java八股-jvm入门-程序计数器,堆,元空间,虚拟机栈,本地方法栈,类加载器,双亲委派,类加载执行过程
  • MySQL系列之如何在Linux只安装客户端
  • 虚幻引擎 CEO 谈元宇宙:发展、策略与布局
  • 性能优化、安全
  • 【计算机网络】【网络层】【习题】
  • OpenAi assistant run always fails when called from PHP
  • Go unique包:突破字符串局限的通用值Interning技术实现
  • 【M-LOAM学习】
  • 【Java】关键字-abstract【主线学习笔记】
  • 《算法笔记》例题解析 第3章入门模拟--4日期处理(9题)2021-03-03
  • 直流负载箱的主要功能有哪些?
  • 数字化转型中的供应链管理优化
  • 鸭脖变“刺客”,啃不起了
  • Leetcode算法基础篇-贪心算法
  • 输入5个数,求中值,verilog实现
  • more、less 命令:阅读文本
  • 电商效果图渲染神器:轻松高效出图
  • [docker][软件]docker快速安装rabbitmq
  • 【Rust语言】std::collections::HashMap用法
  • Linux环境下安装部署MySQL8.0以上(内置保姆级教程) C语言
  • Oracle数据库expdp与impdp
  • 基于SpringBoot+Vue+MySQL的网上租赁系统
  • CVPR最牛图像评价算法!
  • webview2加载本地页面
  • 「JavaScript深入」一文吃透JS的基本数据类型 Symbol