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

python-leetcode-从中序与后序遍历序列构造二叉树

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

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:def buildTree(self, inorder: List[int], postorder: List[int]) -> Optional[TreeNode]:if not inorder or not postorder:  # 如果任一遍历为空,返回 Nonereturn None# 根节点是后序遍历的最后一个元素root_val = postorder.pop()root = TreeNode(root_val)# 找到根节点在中序遍历中的位置root_index = inorder.index(root_val)# 划分右子树和左子树(注意:先处理右子树,因为后序遍历是左-右-根)right_inorder = inorder[root_index + 1:]left_inorder = inorder[:root_index]# 递归构建右子树和左子树root.right = self.buildTree(right_inorder, postorder)root.left = self.buildTree(left_inorder, postorder)return root

http://www.lryc.cn/news/528759.html

相关文章:

  • 【Oracle篇】使用Hint对优化器的执行计划进行干预(含单表、多表、查询块、声明四大类Hint干预)
  • 设置jmeter外观颜色
  • 计算机网络 IP 网络层 2 (重置版)
  • 神经网络和深度学习
  • MySQL 基础学习(3):排序查询和条件查询
  • webAPI -DOM 相关知识点总结(非常细)
  • web集群
  • Elasticsearch——Elasticsearch性能优化实战
  • 不背单词快捷键(不背单词键盘快捷键)
  • kafka-保姆级配置说明(consumer)
  • 1.五子棋对弈python解法——2024年省赛蓝桥杯真题
  • python3+TensorFlow 2.x(三)手写数字识别
  • 杨辉三角(蓝桥杯2021年H)
  • 【蓝桥杯嵌入式入门与进阶】2.与开发板之间破冰:初始开发板和原理图2
  • C++ queue
  • 【MySQL-7】事务
  • 03链表+栈+队列(D1_链表(D1_基础学习))
  • Git 出现 Please use your personal access token instead of the password 解决方法
  • AI大模型开发原理篇-1:语言模型雏形之N-Gram模型
  • STM32新建不同工程的方式
  • 【Rust自学】14.5. cargo工作空间(Workspace)
  • 全面了解 Web3 AIGC 和 AI Agent 的创新先锋 MelodAI
  • 10.3 LangChain实战指南:解锁大模型应用的10大核心场景与架构设计
  • Swing使用MVC模型架构
  • 设计新的 Kibana 仪表板布局以支持可折叠部分等
  • 修改maven的编码格式为utf-8
  • 解锁罗技键盘新技能:轻松锁定功能键(罗技K580)
  • HTB:Active[RE-WriteUP]
  • [C语言日寄] 源码、补码、反码介绍
  • 安卓逆向之脱壳-认识一下动态加载 双亲委派(一)