Python:重建二叉树
来源:互联网 发布:淘宝数据魔方官网 编辑:程序博客网 时间:2024/06/01 09:47
牛客网上的剑指 offer的在线编程:
题目描述
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。
# -*- coding:utf-8 -*-'''重建二叉树题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。'''class TreeNode: def __init__(self, x): self.val = x self.left = None self.right = Noneclass Solution: # 返回构造的TreeNode根节点 def reConstructBinaryTree(self, pre, tin): # write code here if len(pre) == 0: return None if len(pre) == 1: return TreeNode(pre[0]) else: res = TreeNode(pre[0]) res.left = self.reConstructBinaryTree(pre[1: tin.index(pre[0]) + 1], tin[: tin.index(pre[0])]) res.right = self.reConstructBinaryTree(pre[tin.index(pre[0]) + 1: ], tin[tin.index(pre[0]) + 1: ]) return res
阅读全文
0 0
- Python:重建二叉树
- 6重建二叉树python
- [牛客网,剑指offer,python] 重建二叉树
- python 重建二叉树的三个方法
- 前中序重建二叉树python实现
- python 重建二叉树与二叉树下一个节点
- 二叉树的遍历以及重建(Python实现)
- python实现剑指offer系列:重建二叉树
- 剑指offer之重建二叉树(Python)
- 3.9重建二叉树
- 重建二叉树
- 二叉树重建
- 二叉树重建
- 二叉树的重建
- 重建二叉树
- 重建二叉树
- 重建二叉树
- 重建二叉树
- 对抗女巫的魔法碎片(贪心,排序)
- 利用elasticsearch dump插件完成数据迁移
- python __name__
- DFS(理解)
- 日志文件log4j的使用总结
- Python:重建二叉树
- Educational 25 ABCD
- 基于F407,TB6560步进电机驱动学习使用整理
- PAT (Advanced Level) Practise 1047 Student List for Course (25)
- c#班马zt410打印中文
- spring常见错误:Error creating bean with name 'xxx'
- Fragment系列之调用getActivity为null的问题
- Redis 特性
- 数据分析2-1