树
黑夜中坚持
这个作者很懒,什么都没留下…
展开
-
二叉树的前中后序遍历之递归与迭代解法
# 前序遍历之递归class Solution: def preorderTraversal(self, root: TreeNode) -> List[int]: if not root: return [] res = [] def func(root): if not root: return res.append(root.val)原创 2020-09-30 02:09:40 · 115 阅读 · 0 评论 -
二叉搜索树的第k个节点
题目描述给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。class Solution: def __init__(self): self.array = [] # 返回对应节点TreeNode def KthNode(self, pRoot, k): i...原创 2020-05-01 16:51:38 · 97 阅读 · 0 评论 -
序列化和反序列化二叉树
题目描述请实现两个函数,分别用来序列化和反序列化二叉树二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点(#),以 ! 表示一个结点值的结束(value!)。二叉树的反序列化是指:根据某种遍历顺序得到...原创 2020-05-01 02:09:54 · 110 阅读 · 0 评论 -
26. 二叉搜索树与双向链表
题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。题目思路借助一个数组,利用中序遍历遍历,将遍历的元素存放到数组中,这时数组中的元素已经是按照升序排好序的,只需链接左右指针即可.python:class Solution: def __init__(self): self.arr = [] ...原创 2019-12-30 10:00:05 · 71 阅读 · 0 评论 -
24.二叉树中和为某一值的路径
题目描述输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)python:c++:...原创 2019-12-29 11:03:44 · 68 阅读 · 0 评论 -
23.二叉搜索树的后序遍历序列
题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。python:class Solution: def VerifySquenceOfBST(self, sequence): if len(sequence) == 0: return False ...原创 2019-12-28 11:17:44 · 84 阅读 · 1 评论 -
22. 从上往下打印二叉树
题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。题目思路:创建一个temp队列,将根节点放入到temp队列中,从队列中取元素,放入到res队列中,当取元素时判断取的元素有没有子节点,如果有子节点,则将子节点加入到temp队列中.python:class Solution: def PrintFromTopToBottom(self, root): i...原创 2019-12-27 15:47:54 · 76 阅读 · 0 评论 -
18. 二叉树的镜像
题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:python:class Solution: # 返回镜像树的根节点 def Mirror(self, root): if root is None: return None temp = root.left root.left = roo...原创 2019-12-25 20:02:08 · 102 阅读 · 0 评论 -
17.树的子结构
题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)原创 2019-12-25 18:48:15 · 77 阅读 · 0 评论 -
4.重建二叉树
题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。python:class TreeNode: def __init__(self, x): self.val = x ...原创 2019-12-16 11:24:26 · 67 阅读 · 0 评论